Asp.net mvc 4 MVC4 Ajax表单URL

Asp.net mvc 4 MVC4 Ajax表单URL,asp.net-mvc-4,asp.net-mvc,Asp.net Mvc 4,Asp.net Mvc,有没有办法为AJAX表单设置URL?我正在使用Ajax.BeginForm()语法寻找答案,这样我就可以使用Microsoft的模型构造魔法,而无需自己重新解析url字符串 在foo.com.au/getFoo上有一个局部视图,其中包含一个ajax表单。ajax表单将发布到Foocontroller(默认),getFooaction 当我从外部站点(bar.com.au)调用此文件时,我希望它发回foo.com.au/getFoo。相反,它被发布到bar.com.au/getFoo。是否有某种方

有没有办法为AJAX表单设置URL?我正在使用
Ajax.BeginForm()
语法寻找答案,这样我就可以使用Microsoft的模型构造魔法,而无需自己重新解析url字符串

foo.com.au/getFoo
上有一个局部视图,其中包含一个ajax表单。ajax表单将发布到
Foo
controller(默认),
getFoo
action

当我从外部站点(
bar.com.au
)调用此文件时,我希望它发回
foo.com.au/getFoo
。相反,它被发布到
bar.com.au/getFoo
。是否有某种方法可以告诉Ajax表单发布到完整的URL,而不仅仅是相对路径

动机

对于那些怀疑hax0rz或其他恶意行为的人,我已经构建了一个小部件,它正在多个客户端站点上集成。我现在正在为这个小部件构建一个身份验证插件。该小部件不会将它们重定向到我的网站进行身份验证,因此我希望它将用户名/密码输入表单的结果发布回我的域。

您需要通过Ajax选项传递它,而不是在BeginForm:

@using (Ajax.BeginForm(
    new AjaxOptions
    {
        Url = Url.Action("getFoo", "Foo", null, Request.Url.Scheme)
    }))
{
    ...
}

“外部网站”的意思是什么?我假设它不是原始域名的一部分。外部网站的意思是我不能控制或了解它的URL,也不能访问它的资源。为所有有关互联网的公民添加的动机我感到困惑。这是我的想法。我在domainA。我想将表单发布到位于域B中且表单位于域A中的操作方法。首先,请确认我的理解,以及我们如何将表单发布到域B?此答案非常有效。对于任何想要执行此操作的人,请记住,您需要将
访问控制允许源站
标题设置为
“*”
,以便跨域JS仍能运行work@Kenneth当前位置我很困惑。这是我的想法。我在domainA。我想将表单发布到位于域B中且表单位于域A中的操作方法。首先,请确认我的理解,以及我们如何将表单发布到域B?为此,您需要CORS,请参阅@DavidColwell的第二条评论。