Я использую 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>'; } ?>
почему это дает не может прочитать свойство «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>'; } } ?>
Но все та же ошибка
Это ошибка вашего jQueryUI, которая использует селектор данных (если вы заходите в стек вызовов, который вы увидите), который устарел / несовместим с последним jQuery. Попробуйте с этим jQueryUI:
http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.22/jquery-ui.min.js
пример здесь:
Вы обнаружили ошибку / несовместимость!
это не работает jQuery (1.8.0): http://jsfiddle.net/mZPWS/
Работает более ранняя версия jQuery (1.7.2): http://jsfiddle.net/mZPWS/1/
Возможно, это не источник вашей проблемы, но, возможно, установка div для вашего виджета .dialog () может помочь вам.
Ваша строка js $("<strong>'.htmlspecialchars($login_msg_codes[$login_msg]).'</strong>").dialog({modal:true}
похоже использует простое сообщение, которое в большинстве случаев работает.
Можете ли вы попробовать изменить эту строку вместо этого:
$(function() { $("#header") // or any div you have .html("<strong>'.htmlspecialchars($login_msg_codes[$login_msg]).'</strong>") .dialog({modal:true}); });
также убедитесь, что ваш «/cms/ww.admin/login/login.js» не является источником ошибки, консоль ошибок js легко теряется и может указывать на jquery-ui.js, в то время как ошибка находится где-то в другом месте ,
Я подтверждаю проблему несовместимости. Пробовал с jquery-1.8.0 и jquery-ui-1.8.4