Javascript在本地工作但在服务器上运行时会中断

时间:2014-04-09 17:05:16

标签: javascript

$(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){

我无法解决问题所在。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

您的comments/submit.php参数未指向服务器上的正确位置。对于它运行的URL,将会有某种形式的修改,这在本地环境与生产服务器上是不同的。

查看Chrome调试菜单中的“网络”标签(或其他浏览器中的类似标签),了解它的目标位置。

最有可能的解决方案就像在帖子路径的前面添加/一样简单,但网址链中可能还有另外一步或两个缺失。