我得用jQuery启用和禁用文本框,效果不错。被禁用的文本框中有值,但我面临的问题是,被禁用的文本框没有传递给服务器。但我面临的问题是,被禁用的文本框并没有将值传递给服务器,当我使用jQuery启用它时,我在后面的代码中看到文本框的值(调试模式)。请问为什么会出现这种情况,或者有什么办法可以从后面的代码中获取禁用文本框的值。
HTML。
<asp:TextBox ID="txtUniqueNo" runat="server" onkeyup = "OnChange(this)" required/>
我在查看页面中禁用的Javascript。
var inputBox = $("#<%=txtUniqueNo.ClientID%>");
inputBox.prop('disabled', true);
谢谢你
解决方案:
原因很简单。残疾 由于网络浏览器的提交限制政策,输入值没有提交到服务器。
浏览器的 W3 规范规定,输入标签如果是 残疾 被认为是无效的,不应提交。
相反,请使用 readonly
属性。
<input type="text" readonly />
或者使用jQuery。
$("#<%=txtUniqueNo.ClientID%>").attr('readonly', 'readonly');
UPDATE。
看看如何删除 readonly
属性,如果需要的话。http:/jsfiddle.netynevet84HrM