Bawię się pismem maszynowym i próbuję utworzyć skrypt, który aktualizuje element p, gdy tekst jest wprowadzany w polu wprowadzania.
HTML wygląda następująco:
<html>
<head>
</head>
<body>
<p id="greet"></p>
<form>
<input id="name" type="text" name="name" value="" onkeyup="greet('name')" />
</form>
</body>
<script src="greeter.js"></script>
</html>
A greeter.tsplik:
function greeter(person)
{
return "Hello, " + person;
}
function greet(elementId)
{
var inputValue = document.getElementById(elementId).value;
if (inputValue.trim() == "")
inputValue = "World";
document.getElementById("greet").innerText = greeter(inputValue);
}
Podczas kompilacji pojawia tscsię następujący „błąd”:
/home/bjarkef/sandbox/greeter.ts(8,53): The property 'value' does not exist on value of type 'HTMLElement'
Jednak kompilator generuje plik javascript, który działa dobrze w chrome.
Jak mogę uzyskać ten błąd? Jak mogę to naprawić?
Ponadto, gdzie mogę sprawdzić, które właściwości są poprawne na 'HTMLElement'podstawie pisma maszynowego?
Pamiętaj, że jestem bardzo nowy w javascript i maszynopisie, więc może mi brakować czegoś oczywistego. :)