Я пробовал часть комментария к посту из учебника Play! framework
, где функция jquery tools' expose
используется для фокусировки на текстовые поля. Я использую jquery-1.5.2.min.js
и jquery.tools-1.2.5.toolbox.expose.min.js
Я пробовал страницу в Firefox и Chrome. Но эффекта фокусировки не происходит.
когда я использовал элемент проверки Chrome / вкладку Ресурсы и проверял сценарии, я обнаружил эти ошибки.
Uncaught SyntaxError: Unexpected token < jquery.tools.1.2.5.toolbox.min.js:1
Uncaught TypeError: Object [object Object] has no method 'expose' postcomment:94
(anonymous function) postcomment:94
d.extend._Deferred.f.resolveWithjquery-1.5.2.min.js:16
d.d.extend.readyjquery-1.5.2.min.js:16
d.c.addEventListener.yjquery-1.5.2.min.js:16
На вкладке Сценарии отображается только jquery-1.5.2.min.js
, но не файл jquery.tools-1.2.5.toolbox.expose.min.js
.
Когда использовался Mozilla Firefox, косоль Firebug сообщает о 2 ошибках
syntax error
[Break on this error] <!DOCTYPE html>\n jquery.t...se.min.js (line 1)
$("form").expose is not a function
anonymous()postcomm...?postId=3 (line 97)
anonymous(Document postcomment?postId=3, [function()])jquery-1....2.min.js (line 16)
anonymous(Object name=a)jquery-1....2.min.js (line 16)
anonymous()jquery-1....2.min.js (line 16)
[Break on this error] $('form').expose({api: true, loadSpeed: 0}).load(); \npostcomm...?postId=3 (line 97
Ошибка копирования дает
$("form").expose is not a function
http://localhost:9000/application/postcomment?postId=3
Line 97
здесь часть main.html, куда добавляются файлы .js
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>#{get 'title' /}</title>
<meta charset="${_response_encoding}">
<link rel="stylesheet" media="screen" href="@{'/public/stylesheets/main.css'}">
#{get 'moreStyles' /}
<link rel="shortcut icon" type="image/png" href="@{'/public/images/favicon.png'}">
<script src="@{'/public/javascripts/jquery-1.5.2.min.js'}" ></script>
<script src="@{'/public/javascripts/jquery.tools-1.2.5.toolbox.expose.min.js'}"></script>
#{get 'moreScripts' /}
</head>
<body>
...
и show.html, где вызывается функция expose
#{extends 'main.html'/}
#{set title:post.title /}
...
<script type="text/javascript" charset="utf-8">
$(function() {
// Expose the form
$('form').click(function() {
$('form').expose({api: true}).load();
});
// If there is an error, focus to form
if($('form .error').size()) {
$('form').expose({api: true, loadSpeed: 0}).load();
$('form input[type=text]').get(0).focus();
}
});
</script>
Может кто-нибудь помочь мне исправить это?