3

我正在尝试使用 jQuery 输入掩码插件(jquery.maskedinput-1.3.min.js),我已经搜索了几个示例/解决方案,我的代码与其他工作示例完全相同,但它根本不会为我工作。请记住,我的代码现在只是测试这个插件(试图让它工作,这将解释为什么我试图将日期输入掩码应用于名称字段)我的代码如下:

HTML

<!DOCTYPE html>

<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>Persons of Interest</title>
    <link rel="stylesheet" type="text/css" href="/Default_Styler.css" />
    <link rel="shortcut icon" href="/person.ico" type="image/x-icon" />
    <script src="/Scripts/jquery.1.7.2.js" type="text/javascript"></script>
    <script src="/Scripts/jquery.maskedinput-1.3.min.js" type="text/javascript"></script>
    <script src="/Scripts/FormHandler.js" type="text/javascript"></script>
</head>
<body>
    <div id="WrapperDiv">
        <div id="TitleBar">    <!--Beginning of Title Bar-->
            <div style="padding-top: 30px; text-align: center;">Persons of Interest</div>
        </div>                 <!--End of Title Bar-->
        <div id="FormHolder">
            <form action="">
                <p><label>POI Name: </label><input type="text" id="POI Name" name="POI Name" value=""/></p>
            </form>
        </div>
    </div>
</body>
</html>

JavaScript

jQuery(function ($) {
    $("#POI Name").mask("99/99/9999");
});

除此之外,我可以向您保证,引用的 jQuery 库确实在适当的目录中。(/脚本/...)

当我单击输入字段或任何内容时,我没有收到错误,它只是什么都不做。

4

3 回答 3

7

jQuery 选择器遵循标准的 CSS 语法,因此 ID 中间的空格实际上被视为后代选择器。让您的生活更轻松:在处理 jQuery 时,将您的 ID 和类限制为字母数字、连字符,仅此而已。

澄清一下:jQuery中有一个引用/转义语法,但恕我直言,处理起来太烦人了,因此我什至没有给出它的例子。

于 2012-09-07T20:18:31.370 回答
4

remove the space from the ID and then try this

jQuery(function ($) {
    $("#POIName").mask("99/99/9999");
});
于 2012-09-07T20:21:23.170 回答
2

ID 属性中的空格无效。您也应该将您的 id 更改为$("#POIName")并更新您的 html。

Jquery-ids-with-spaces是一个类似的问题,您可能会觉得很有趣。

于 2012-09-07T20:18:43.067 回答