2 回答

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊
在你的例子中,我有一個(gè)像這樣的帶有 jQuery 的簡單 Keyup
$('#value').keyup(function (){
$('#copy-value').val($(this).val());
});
例如這個(gè)片段:
$('#value').keyup(function (){
$('#copy-value').val($(this).val());
});
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="margin:auto; width:300px; background-color:lightblue; padding:5px;">
<label for="">Input</label>
<input id="value" type="text" name="">
<br>
<label for="">Result(x2):</label>
<input id="copy-value" type="text" name="" readonly>
</div>
</body>

TA貢獻(xiàn)1783條經(jīng)驗(yàn) 獲得超4個(gè)贊
script
您實(shí)際上在文檔中的哪里有?它應(yīng)該位于 CLOSINGbody
標(biāo)記之前,這樣當(dāng)?shù)竭_(dá)它時(shí),所有 HTML 都將被解析。如果在script
解析 HTML 之前運(yùn)行,您的document.getElementById()
語句將找不到匹配的元素。
此外,thevalue
始終input
是一個(gè)字符串。您必須將其轉(zhuǎn)換為數(shù)字才能使用它進(jìn)行數(shù)學(xué)運(yùn)算。有多種方法可以做到這一點(diǎn),您需要為輸入錯(cuò)誤地包含非數(shù)字值的情況做好準(zhǔn)備,但在下面,我通過在其前面添加 a 來轉(zhuǎn)換value
它+
。
還有一些其他的事情......
您沒有label
正確使用該元素。該for
屬性的值必須與id
標(biāo)簽為“for”的表單元素的屬性值相匹配,或者您可以將表單元素嵌套在 中,label
以便它知道它與哪個(gè)元素相關(guān)。
不要使用內(nèi)聯(lián) JavaScript - 將其分離到 JavaScript 代碼中。
<body>
<div style="margin:auto; width:300px; background-color:lightblue; padding:5px;">
<label>Input
<input type="text">
</label>
<br>
<!-- Not always best to use an input for output. -->
<span>Result(x2):
<span id="out2x"></span>
</span>
</div>
<!-- Place your script just before the closing body tag
so that by the time it's reached, all the HTML elements
will have been parsed. -->
<script>
// Do your event handling in JavaScript, not with inline JavaScript
document.querySelector("input").addEventListener("keyup", function(event){
// You must convert the input string to a number
document.getElementById('out2x').textContent = 2* +this.value;
});
</script>
</body>
添加回答
舉報(bào)