【问题标题】:jquery input mask overwriting textbox value with asp.netjquery输入掩码用asp.net覆盖文本框值
【发布时间】:2013-11-02 04:06:51
【问题描述】:

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

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

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

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

txtPrimaryPhone.Text = "1234567890";

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

【问题讨论】:

    标签: javascript jquery asp.net jquery-plugins


    【解决方案1】:

    解决方案如下:

    代替

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

    试试这个

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

    它对我有用:)

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

      • 感谢 Yushell,我尝试在将值发送到屏幕之前对其进行预格式化,但仍然没有显示。感谢您的洞察力,感谢它..
      猜你喜欢
      • 1970-01-01
      • 2020-10-10
      • 1970-01-01
      • 1970-01-01
      • 2011-03-21
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多