开发者

Previous ajax request changes the post URL for next form submit

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

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜