出于某种原因,我无法使用id
将此结果显示在字段中。它使用class
工作正常,但它只是拒绝使用id
。
JSFiddle here http://jsfiddle.net/pbe4b/15/
工作正常:
<input id="button123" placeholder="number here"></input>
<span class="output123"></span>
不起作用:
<input id="button123" placeholder="number here"></input>
<input id="output123"></input>
会喜欢任何帮助!
答案 0 :(得分:2)
使用
$('#output123').val()
而不是
$('#output123').html()
input
是自我结束标记,因此您应该使用val()
从中获取价值。
答案 1 :(得分:0)
它与类/ id无关,这是因为你更改了元素。
输入没有html()
,您使用val()
来设置值。
在没有复制和粘贴的情况下清理代码:
$('#button123').keyup(function(){
var n = parseInt($(this).val(), 10);
var calc;
if(n <= 35000) {
calc = n/100*70;
} else if(n <= 45000) {
calc = n/100*75;
} else {
calc = n/100*80;
}
var val = numberWithCommas(calc.toFixed(2));
$('#output123').val(val);
});
答案 2 :(得分:0)
您已将范围更改为输入,因此.html()
不再有效。选择器很好。将.html()
的所有实例更改为.val()
。
<强> HTML:强>
<input id="button123" placeholder="number here"></input>
<input id="output123"></input>
<强> JavaScript的:强>
$('#button123').keyup(function(){
var n = parseInt($(this).val());
if(n <= 35000) {
$('#output123').val(numberWithCommas((n/100*70).toFixed(2)));
}
else if(n <= 45000) {
$('#output123').val(numberWithCommas((n/100*75).toFixed(2)));
}
else {
$('#output123').val(numberWithCommas((n/100*80).toFixed(2)));
}
})
function numberWithCommas(x) {
return x.toString().replace(/\B(?=(?:\d{3})+(?!\d))/g, ",");
}
答案 3 :(得分:0)
Vals而不是HTML,因为它是输入
$('#button123').keyup(function(){
var n = parseInt($(this).val());
if(n <= 35000) {
$('#output123').val(numberWithCommas((n/100*70).toFixed(2)));
}
else if(n <= 45000) {
$('#output123').val(numberWithCommas((n/100*75).toFixed(2)));
}
else {
$('#output123').val(numberWithCommas((n/100*80).toFixed(2)));
}
})
function numberWithCommas(x) {
return x.toString().replace(/\B(?=(?:\d{3})+(?!\d))/g, ",");
}
答案 4 :(得分:0)
$('#button123').keyup(function(){
var n = parseInt($(this).val());
if(n <= 35000) {
$('#output123').val(numberWithCommas((n/100*70).toFixed(2)));
}
else if(n <= 45000) {
$('#output123').val(numberWithCommas((n/100*75).toFixed(2)));
}
else {
$('#output123').val(numberWithCommas((n/100*80).toFixed(2)));
}
})
function numberWithCommas(x) {
return x.toString().replace(/\B(?=(?:\d{3})+(?!\d))/g, ",");
}`enter code here`
答案 5 :(得分:0)
使用$('#output123').val()
设置值。
答案 6 :(得分:0)
要设置输入的值,请使用:
JS:
document.getElementById('output123').value = 'my value';
jQuery的:
$('#output123').val('my value');
.html用于替换项目的内部内容,在输入的情况下,您需要更改属性。