Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc Umbraco 5通过添加新的MVC区域实现Ajax_Asp.net Mvc_Asp.net Ajax_Umbraco - Fatal编程技术网

Asp.net mvc Umbraco 5通过添加新的MVC区域实现Ajax

Asp.net mvc Umbraco 5通过添加新的MVC区域实现Ajax,asp.net-mvc,asp.net-ajax,umbraco,Asp.net Mvc,Asp.net Ajax,Umbraco,我正在尝试在Umbraco 5(jupiter)上实现AJax,我尝试创建了Surface控制器,它与普通post back一起工作非常好,但它没有提供使用Mvc AJax控件的工具,例如AJax.BeginForm等等,我现在在应用程序中添加了一个新的Mvc区域,我可以通过Ajax表单轻松地将帖子发送回控制器的操作,但我应该从该操作返回什么,因为Currentumbracope不可访问(因为它不是Surface控制器),我的代码相当简单 @using (Ajax.BeginForm("Hand

我正在尝试在Umbraco 5(jupiter)上实现AJax,我尝试创建了Surface控制器,它与普通post back一起工作非常好,但它没有提供使用Mvc AJax控件的工具,例如AJax.BeginForm等等,我现在在应用程序中添加了一个新的Mvc区域,我可以通过Ajax表单轻松地将帖子发送回控制器的操作,但我应该从该操作返回什么,因为Currentumbracope不可访问(因为它不是Surface控制器),我的代码相当简单

@using (Ajax.BeginForm("HandleFollowsUs", "propertyDetails", new AjaxOptions { InsertionMode = InsertionMode.Replace, HttpMethod = "POST", LoadingElementId = "ajax-loader", UpdateTargetId = "fuError" }))
{
 <input type="image" style="border-width: 0px;" src="/images/btnSubmitN.jpg"  id="btn_submitEmail" /></span>

}
AND my ACTION is 
 [HttpPost]
    public ActionResult HandleFollowsUs(FormCollection collection) {
//Do Something
Return View();//////This is where i am confused.
}
@使用(Ajax.beginfollowsus(“HandleFollowsUs”,“propertyDetails”,新的AjaxOptions{InsertionMode=InsertionMode.Replace,HttpMethod=“POST”,LoadingElementId=“Ajax loader”,UpdateTargetId=“fuError”}))
{
}
我的行动是
[HttpPost]
公共行动结果HandleFollowsUs(FormCollection集合){
//做点什么
Return View();//这就是我感到困惑的地方。
}
如果我返回视图,它不在新区域中,部分视图将只返回页面的一小部分:/ 任何帮助都将不胜感激, 谢谢
Sher

您可以将当前URL作为隐藏表单文件发送,以便HandleFollowUs可以执行重定向


但是如果我理解正确的话,你只是想做一些客户端验证?考虑使用MVC框架中已经存在的不引人注目的验证框架。有关更多信息,请参阅本文:

改用Jquery Ajax并返回字符串,它不会影响Umbraco 5的正常路由。示例代码如下所示

function loadList(){
$.ajax({
    type: "POST",
    url: "/en/propertydetails/searchListView",
    data: "loc=" + loc + "&startDate=" + startDate + "&endDate=" + endDate + "&bedrooms=" + bedrooms + "&adults=" + adults + "&children=" + children + "&offerCode=" + offerCode,
    error: function (xhr, status, error) {
        //alert('error');
    },
    success: function (response) {
        //do something with response
        populateSearchList(response);
    }
});
}

我的行动是

[HttpPost]
    public string searchListView(string loc, string endDate, string startDate, string bedrooms, string adults, string children, string offerCode)
    {
//Do Something
}

感谢您的回复sebastiaan,我不想做客户端验证,我希望用户提交他的电子邮件,这样他就可以关注我们的时事通讯,实际上我之所以这么做,是因为您的软件包(jupiter作为Visual studio应用程序),它工作得很好,非常感谢,我还使用Jquery ajax解决了这个问题。欢迎您。本打算建议使用普通jQuery,但我看到您已经用这种方式修复了它,做得很好!