我正在制作电子商店,我想输出输入字段中写的确切金额
<input type="number" id="val" value="1" class="input-text" >
$("input[type=number]").ready(function(){
var val = $("#val").val();
alert("there are " + val + "in your cart");
});
现在问题在于它只返回1,因为我将值设置为1
这里是小提琴示例https://jsfiddle.net/s81g6963/3/
我希望用户输入值,我希望该值乘以产品价格$ 9.99
答案 0 :(得分:2)
除了ready
元素之外,您不希望使用document
,只有在您需要等待DOM准备就绪的情况下(可能是因为您无法控制)脚本标记的位置;如果这样做,只需将脚本标记放在页面末尾,在结束</body>
标记之前。)
如果您希望在用户更改值时运行该代码,请使用change
:
$("input[type=number]").on("change", function(){
var val = $("#val").val();
alert("there are " + val + "in your cart");
});
如果您想在文档准备就绪和时运行两者,当用户更改值时,将代码放入命名函数并在两个位置使用它:
$(document).ready(function() {
function useTheValue() {
var val = $("#val").val();
alert("there are " + val + "in your cart");
}
$("input[type=number]").on("change", useTheValue);
useTheValue();
});
如果脚本位于body
的末尾,您可以省略ready
:
(function() {
function useTheValue() {
var val = $("#val").val();
alert("there are " + val + "in your cart");
}
$("input[type=number]").on("change", useTheValue);
useTheValue();
})();