javascript - 防止更改 Jquery 中的文本框值

标签 javascript jquery asp.net

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/

相关文章:

Javascript 仅适用于 alert();

javascript - Chrome : Uncaught Error: can't load XRegExp twice in the same frame

javascript - 在 .js 文件中设置变量

javascript - 如何在ajax调用后重新初始化lightgallery

javascript - 禁用 asp.net 按钮的回发

asp.net - Linq to Sql-根据环境变量动态设置连接字符串

javascript - 在外部单击时关闭选择框

javascript - 使用 ng-switch-when AngularJS 时无法附加 div?

JQuery - 按属性选择?

asp.net - 如何在 Global.asax 中获取 session