我有一个ASP.NET网络表单,我正在使用来自http://digitalbush.com/projects/masked-input-plugin的屏蔽输入插件,这似乎是一个非常受欢迎的插件。它工作得很好,但在尝试使用屏蔽预先填充文本框中的值时遇到问题。
在我的文档中,我正在表演:
$("#txtPrimaryPhone").mask("(999) 999-9999 ?x9999");
在我的代码隐藏中,我设置了我的文本属性:
txtPrimaryPhone.Text = "1234567890";
加载页面时,我的文本框为空。有没有人遇到类似的问题,或者任何人都可以提出任何建议?谢谢!
答案 0 :(得分:1)
以下是解决方案:
而不是
$("#txtPrimaryPhone").mask("(999) 999-9999 ?x9999");
试试这个
$.each($('#txtPrimaryPhone'), function (iEmt, emt) {
$(emt).mask("(999) 999-9999 ?x9999").val($(emt).attr("value"));
});
它对我有用:)
答案 1 :(得分:0)
如果我没错,加载页面后会应用jQuery掩码,然后你的txtPrimaryPhone.Text就会设置为服务器端。我有两个理论。
掩码不接受一个:1234567890,因为它的格式不正确。正确的格式应该类似于txtPrimaryPhone.Text =“(999)999-9999 x99999”;。
两个:掩码用作用户输入的过滤器,但不接受txtPrimaryPhone的服务器端值。 没有我们可以调试或编辑的样本,有点难以找到。