Ajax的工作方式是返回true,但不是false

时间:2014-08-29 19:05:04

标签: jquery ajax

我不确切知道为什么会发生这种情况,这里有一些代码:

function submit_edit(url) {
    var value = $('#clicked').val();
    var staff_ID = $('#staff_id').val();

    if (value == 'Delete') {
        url = url + '/Delete/' + staff_ID;
        alert(url);
        myApp.confirm('Are you sure?', 'Delete Staff', function () {
            check_url(url);
        });
        return false;
    }
    else if (value == 'Submit') {
        alert(url);
        myApp.confirm('Are you sure?', 'Submit Changes', function (event) {
            //event.preventDefault();
            check_url(url);

        });
        return false;
    }
    else if (value == 'Cancel') {
        url = url + '/Cancel';
        myApp.confirm('Are you sure?', 'Cancel Changes', function () {
            check_url(url);
        });
        return false;
    }
}

deletecancel语句有效。但是当我点击提交时,它不会处理表单。另外两个人没有使用任何checkbox输入。我将return false;转为return true;时脚本将立即生效,但它会重定向它...这不是我想要的。这是我到目前为止最接近的。如果需要,您可以申请额外的代码,我会提供。我非常感谢所有的答案和反馈!

更新


以下是check_url()

的请求代码
    function check_url(recieve_url) {
    if (recieve_url == undefined || recieve_url == null) {
        alert("recieve_url is not set!");
    }
    $.ajax({
        url : recieve_url,
        type : 'POST',
        dataType : 'json',
        success : function (result) {
            //alert(result['bg'] + result['message'] + result['caption'])

            myApp.alert(result['message'], result['title'], function () {
                if (result['redirect'] != null || result['redirect'] != undefined){
                    window.location = "<?php echo $this->url;?>"+result['redirect'];
                }
            });
                //myApp.alert(result['message'], result['title']);


        },
        error : function (xhr, ajaxOptions, thrownError) {
            myApp.alert(xhr.responseText);
            myApp.alert(recieve_url);
            myApp.alert(thrownError);
        }

    })

}

0 个答案:

没有答案