【问题标题】:Unable to mask the input无法屏蔽输入
【发布时间】:2012-04-16 16:58:38
【问题描述】:

这应该很简单,但由于某种原因我没有做对。 :/

我正在使用可用的 jQuery 屏蔽输入插件 here

以下是我的代码sn-p:

jQuery:

<script>
$(document).ready(function(){
  $("#newStudentForm").validate();
});
jQuery(function($){
   $("#Sphone").mask("(999) 999-9999");
});
</script>

HTML:

<input type="text" maxlength="10" name="Sphone" id="Sphone"  size="28px"/>

到目前为止,我在文本框中看不到任何掩码。我该如何解决这个问题?

【问题讨论】:

  • 你运行的是什么版本的jQuery?能否提供更多页面代码?
  • 这看起来真的像从两个不同的来源复制和粘贴。或者你为什么要在同一页面上混合两种方式来注册一个 domready 事件?
  • @ThiefMaster 好吧,对。第一部分可能来自 jQuery Validate。第二部分来自上述输入掩码插件。下面的答案可能是解决方法,但我认为我们需要查看更多页面以了解可能出现的其他问题。
  • @rdesai 我认为您将不得不提供更多代码,也许是页面链接,以便我们可以帮助您调试问题。
  • @magzalez jQuery: HTML: 学生电话号码:

标签: jquery forms jquery-plugins maskedinput


【解决方案1】:

检查您是否包含插件文件

<input type="text" maxlength="10" name="Sphone" id="Sphone"  size="28"/> // not `28px`


$(document).ready(function(){
  $("#newStudentForm").validate();
  $("#Sphone").mask("(999) 999-9999");
});

【讨论】:

  • 我以前试过这个,由于某种原因它不起作用。对不起。
  • 我试过了,还是不行。对不起。我想知道为什么要用 28 代替 28px。
  • @rdesai 默认为像素。最好在 CSS 中而不是在 HTML 中设置样式或“调整大小”字段和任何其他元素。
  • 感谢您提供的信息。我将设置 CSS 样式,但恐怕面具仍然无法正常工作。
【解决方案2】:

根据你给我的信息,我在http://jsfiddle.net/Sgu6e/ 得到了它。

这就是我所做的:

我删除了 $("#rad1").buttonset(); 行,因为它不适用于您提供给我的代码并且破坏了 JS 的其余部分。

然后我把剩下的JS改成如下:

$(document).ready(function() {
    $("#newStudentForm").validate();
    $("#Sphone").mask("(999) 999-9999");
});

同样,您可以在 http://jsfiddle.net/Sgu6e/ 看到它的工作原理。

【讨论】:

  • 我很高兴它为你工作。我在我的代码中尝试过,但不幸的是,由于某种原因它无法正常工作。
  • 这是我更新的代码(类似于你的):
  • 学生电话号码: 我已经包含了 jQuery 文件。它不适合我,它让我发疯!对不起。
  • 您应该尝试在jsfiddle.net 上进行复制。这比将代码复制并粘贴到评论中要有用得多。
猜你喜欢
  • 2018-04-05
  • 1970-01-01
  • 1970-01-01
  • 2021-01-04
  • 2021-03-03
  • 2013-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多