js无法改变 设置了readonly属性的文本框的值,原因在于:
发生回发时,TextBox 控件(其 ReadOnly 属性设置为 true)的 Text 值被发送到服务器,但是服务器不处理只读文本框。
这么操作的目的,是为了防止恶意用户更改只读的 Text 值。
在回发之间,Text 属性的值保留在视图状态中,除非经过服务器端代码修改。
1,Button的源代码
复制代码 代码示例:
protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection)
{
base.ValidateEvent(postDataKey);
string text = this.Text;
string str2 = postCollection[postDataKey];
if (!this.ReadOnly && !text.Equals(str2, StringComparison.Ordinal))
{
this.Text = str2;
return true;
}
return false;
}
解决方法:
1,JS设置文本框为ReadOnly
$('#txtEPullDate').attr("readonly", "readonly");
按以上方式处理,后台代码就可以取得文本框中的值了。