JQuery UI 1.8.10无法读取未定义的属性"3"

Jel*_*zen 12 php jquery jquery-ui jquery-selectors

我使用JQuery UI 1.8.10和jquery最新.

我的代码是:

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.10/jquery-ui.js"></script>
<script type="text/javascript" src="/cms/ww.admin/login/login.js"></script>
</head>
<body>

<div id="header"></div>
<?php
    if(isset($_REQUEST['login_msg']))
    {
        require SCRIPTBASE.'cms/ww.incs/login-codes.php';
        $login_msg = $_REQUEST['login_msg'];
        if(isset($login_msg_codes[$login_msg]))
        {
            echo '<script>$(function(){$("<strong>'.htmlspecialchars($login_msg_codes[$login_msg]).'</strong>").dialog({modal:true});});</script>';
        }

?>
Run Code Online (Sandbox Code Playgroud)

为什么这会导致无法读取未定义错误的属性"3"?

给出错误的文件是 jquery-ui.js on line 186

好的,现在我改为:

</head>
<body>

<div id="header"></div>
<div id="login-msg"></div>
<?php
if(isset($_REQUEST['login_msg'])){
require SCRIPTBASE.'cms/ww.incs/login-codes.php';
$login_msg=$_REQUEST['login_msg'];
if(isset($login_msg_codes[$login_msg])){
   echo '<script>$(function(){
                    $("#login-msg").html("<strong>'.htmlspecialchars($login_msg_codes[$login_msg]).'</strong>").dialog({modal:true});});</script>';
}
}
 ?>
Run Code Online (Sandbox Code Playgroud)

但仍然是同样的错误

Tec*_*ter 20

这是你的jQueryUI中的一个错误,它使用:数据选择器(如果你进入调用堆栈就会看到它),这个错误已被弃用/与最新的jQuery不兼容.试试这个jQueryUI:

http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.22/jquery-ui.min.js
Run Code Online (Sandbox Code Playgroud)

这里的例子:

http://jsfiddle.net/techunter/RyUVq/

  • 您可以编写$("<p> text </ p>").dialog(),但这确实不可取,因为您以后无法对该对话框执行任何操作(无选择器). (2认同)