我似乎已经掌握了一切,
<script language="javascript" type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript" src="js/mailing-list.js"></script>
在标题中,以及js文件夹中的mailing-list.js
。但由于某种原因,它似乎没有解析。我已经将代码粘贴到下面 - 任何想法?
var emailEntered,
nameVal,
compVal,
foneVal,
cityVal,
$(document).ready(function () {
$("#SendButton").click(function () {
$(".error").hide();
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
var emailaddressVal = $("#email").val();
if (emailaddressVal == '') {
$("#message").html('<span class="error">Enter your email address before submitting.</span>');
return false;
} else if (!emailReg.test(emailaddressVal)) {
$("#message").html("<span class='error'>That is not an email address. Typo?</span>");
return false;
} else {
emailEntered = escape($('#email').val());
}
nameVal = escape($("#name").val());
emailVal = escape($("#email").val());
compVal = escape($("#comp").val());
foneVal = escape($("#fone").val());
cityVal = escape($("#city").val());
});
$('#signup').submit(function () {
$("#message").html("<span class='error'>Adding your email address...</span>");
$.ajax({
url: 'inc/store-address.php',
data: 'ajax=true&email=' + emailEntered + '&name=' + nameVal + '&comp=' + compVal + '&fone=' + foneVal + '&city=' + cityVal,
success: function (msg) {
$('#message').html(msg);
}
});
return false;
});
});
更新:通过解析我的意思是忽略了对mailing-list.js的调用。
答案 0 :(得分:4)
var emailEntered,
nameVal,
compVal,
foneVal,
cityVal,
应该是:
var emailEntered,
nameVal,
compVal,
foneVal,
cityVal;
注意结尾处的分号。
答案 1 :(得分:2)
你应该在代码上运行静态代码分析器,比如jshint,同时编写代码:
test.js: line 7, col 6, Missing semicolon.
test.js: line 13, col 36, Expected '===' and instead saw '=='.
你首先会看到一些语法错误。然后,您应该打开您的JavaScript控制台并查看错误是什么。通常,解释器会提供很多信息。
顺便说一句,第二个警告并不是一个错误,而是在进行相等检查时使用javascript的好习惯。
关于你的编辑,你应该使用像firebug这样的脚本(或者你可以在你喜欢的浏览器中获得的任何其他webdev工具)并检查它是否可以获得你正在编写的脚本。 它回归404了吗?然后检查路径。它回归403了吗?然后检查权限......
答案 2 :(得分:1)
我不知道你的意思是“不解析”,但你应该检查开发者控制台(在浏览器的菜单上查看)。 还有:
var emailEntered,
nameVal,
compVal,
foneVal,
cityVal,
应该是:
var emailEntered,
nameVal,
compVal,
foneVal,
cityVal;