$(document).ready(function(){
/* The following code is executed once the DOM is loaded */
/* This flag will prevent multiple comment submits: */
var working = false;
/* Listening for the submit event of the form: */
$('#addCommentForm').submit(function(e){
e.preventDefault();
if(working) return false;
working = true;
$('#submit').val('Working..');
$('span.error').remove();
console.log('Test javascript 1')
/* Sending the form fileds to submit.php: */
$.post('comments/submit.php',$(this).serialize(),function(msg){
console.log('Test javascript 2')
working = false;
$('#submit').val('Submit');
if(msg.status){
/*
/ If the insert was successful, add the comment
/ below the last one on the page with a slideDown effect
/*/
$(msg.html).hide().insertBefore('#addCommentContainer').slideDown();
$('#body').val('');
}
else {
/*
/ If there were errors, loop through the
/ msg.errors object and display them on the page
/*/
$.each(msg.errors,function(k,v){
$('label[for='+k+']').append('<span class="error">'+v+'</span>');
});
}
},'json');
});
});
当我在本地运行它时,这个脚本运行正常但是,当我将它上传到服务器时,当我点击“提交”并挂起“正在工作......”时它就会中断 问题似乎来自
行$.post('comments/submit.php',$(this).serialize(),function(msg){
我无法解决问题所在。有人可以帮忙吗?
答案 0 :(得分:0)
您的comments/submit.php
参数未指向服务器上的正确位置。对于它运行的URL,将会有某种形式的修改,这在本地环境与生产服务器上是不同的。
查看Chrome调试菜单中的“网络”标签(或其他浏览器中的类似标签),了解它的目标位置。
最有可能的解决方案就像在帖子路径的前面添加/
一样简单,但网址链中可能还有另外一步或两个缺失。