开发者

Previous ajax request changes the post URL for next form submit

开发者 https://www.devze.com 2023-02-06 20:16 出处:网络
I am making a jQuery ajax request in a asp.net mvc page: $.ajax({ type: \"POST\", url: \"/Home/Go\", data: dataObj,

I am making a jQuery ajax request in a asp.net mvc page:

$.ajax({
            type: "POST",
            url: "/Home/Go",
            data: dataObj,
            success: function (data) {
                // update html here
                }
            }
        });

This call is within a page, which has a form and other elements which submit to other url (lets say "/Home/Do"). Now after the ajax call returns, If I click on any other element the form still submits to url1 instead of url2

Note I tried adding a "return false" statement to click event handler where the ajax call is made. But even this did not help

The ajax call is made within the jQuery dialog:

$('#myDialog').dialog({ buttons:
            [
                {
                    text: 'Next',
                    click: function () { HandleNext(); return false; }
                }
            ],
            title: 'Dialog-Title'
        }开发者_StackOverflow);



function HandleNext() 
{

    $.ajax({
                type: "POST",
                url: "/Home/Go",
                data: dataObj,
                success: function (data) {
                    // update html here
                    }
                }
            });

 return false;
}

Anybody faced a similar issue? any solutions?


return false in the click handler is mandatory for ALL ajax requests. The web browser will visit the url otherwise. In other words: The ajax request is made first and then a regular request.

No urls can automagically be replaced with other urls. You either do it in your javascript code, or in your action/view.

0

精彩评论

暂无评论...
验证码 换一张
取 消