我正在尝试Play! framework
教程的帖子评论部分,其中jquery tools' expose
函数用于将焦点带到文本字段。我正在使用jquery-1.5.2.min.js
和jquery.tools-1.2.5.toolbox.expose.min.js
我在firefox和chrome中试过了这个页面。但是,焦点效果不会发生。
当我使用chrome的inspect元素/ Resources选项卡并检查脚本时,我发现了这些错误。
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 cosole会报告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>
...
以及调用expose函数的show.html
#{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>
有人可以帮我纠正吗?
答案 0 :(得分:1)
Firebug中的实际标记(HTML)如何显示?
syntax error
[Break on this error] <!DOCTYPE html>\n jquery.t...se.min.js (line 1)
似乎是无效的无效标记,虽然我看不到它来自哪里,但这些视图看起来很好。您是否检查过您的项目中是否存在/public/javascripts/jquery.tools-1.2.5.toolbox.expose.min.js
?
答案 1 :(得分:0)
jquery tools
javascript文件
它已损坏并且在开头包含<!DOCTYPE html> element
。这会导致错误。在我阅读maenu的回复之前,我从未想过要查看javascript文件。感谢他......
当我使用flowplayer.org
网站