我有这个脚本来计算涉及3个变量的操作的结果(totale
):coefficiente
,这取决于anno
和importo
。
$("#anno").change(function () {
var anno = $("option:selected", this);
var importo = document.getElementById('importo').value;
coefficiente = anno.attr("coefficiente");
var totale = ((importo * coefficiente) / 1936.27).toFixed(0);
$("#risultato").html("circa " + totale + " EUR");
});
用户通过下拉列表选择 anno
,coefficiente
是与option
值相关联的下拉列表的参数,importo
在input type="number"
中输入{1}}。
我想看看我创建的the fiddle将清除一切。 :)
当我更改$("#risultato").html(...)
中输入的数字时,我想要的结果是打印input type="number"
,而不仅仅是在下拉列表中选择option
。
我尝试使用$(“#anno,#immorto”),但只有在我更改了两个值时才打印结果..虽然显示了NaN
!
答案 0 :(得分:0)
试试这个:http://jsfiddle.net/roc6dj67/7/
从技术上讲,您希望将coefficiente
添加为data-coefficiente
并将其命名为,因为coefficiente
不是有效的HTML属性:
var anno = $("#anno");
var importo = $('#importo');
anno.on('change', changeFunc);
importo.on('keyup', changeFunc);
function changeFunc(event) {
var coefficiente = anno.find('option:selected').data("coefficiente"); // use .data() not .attr()
var totale = ((importo.val() * coefficiente) / 1936.27).toFixed(0);
$("#risultato").html("circa " + totale + " EUR");
}