Possible Duplicate:
disable textbox using jquery?
如何防止在 document.getElementsByName()
中使用 jquery 更改文本框值。
有一个这样的选项。
document.getElementById("Quantity").defaultValue;
是否有任何选项可以阻止我的文本框的值在document.getElementsByName()
中发生变化。
在我发出警报后,我想让文本框的值在条件不匹配时保持不变。
我的代码:
$(function () {
$('input[name=Quantity]').blur(allownumbers);
});
function allownumbers() {
var elements = document.getElementsByName('Quantity');
for (var i = 0; i < elements.length; i++) {
if (elements[i].value == '' || elements[i].value < 1) {
alert('Please enter a valid value');
return false;
}
else if (elements[i].value > 100) {
alert('There is no enough inventory for this product to fulfill your order');
return false;
}
}
return true;
}
<input id="Quantity" type="text" name="Quantity"/>
任何建议。
编辑: 我尝试使用这段代码。
$("#textbox1").removeAttr("disabled");
如果我输入 200。会出现警报并且文本框被禁用,因此我什至无法在文本框中重新输入正确的值。如何恢复文本框的默认值。 ?
最佳答案
您可以将原始值存储在变量或隐藏字段中,然后在更新失败时替换该值。如果页面加载时范围已知,则可以使用范围验证。
对于模糊验证来说,警报通常过于突兀。
关于javascript - 防止更改 Jquery 中的文本框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13180795/