1

我有一个 ASP.NET 网络表单,我正在使用来自http://digitalbush.com/projects/masked-input-plugin的屏蔽输入插件,这似乎是一个非常流行的插件。它工作得很好,但是在尝试使用掩码在文本框中预填充值时遇到问题。

在我的 document.ready 中,我正在执行:

$("#txtPrimaryPhone").mask("(999) 999-9999 ?x9999");

在我的代码隐藏中,我像这样设置我的文本属性:

txtPrimaryPhone.Text = "1234567890";

当我的页面加载时,我的文本框是空的。有没有人遇到过类似的问题,或者任何人都可以提供任何建议吗?谢谢!

4

2 回答 2

1

这是解决方案:

代替

$("#txtPrimaryPhone").mask("(999) 999-9999 ?x9999");

尝试这个

 $.each($('#txtPrimaryPhone'), function (iEmt, emt) {
            $(emt).mask("(999) 999-9999 ?x9999").val($(emt).attr("value"));
        });

这个对我有用 :)

于 2013-12-10T17:20:33.627 回答
0

如果我是正确的,一旦您加载页面,就会应用 jQuery 掩码,然后将您的 txtPrimaryPhone.Text 设置为服务器端。我有两个理论。

:1234567890 不被掩码接受,因为它的格式不正确。正确的格式应该类似于 txtPrimaryPhone.Text = “(999) 999-9999 x99999”;。

:掩码用作用户输入的过滤器,但不接受 txtPrimaryPhone 的服务器端值。如果没有我们可以调试或编辑的示例,很难找到它。

于 2013-10-23T19:08:41.373 回答