Asp.net mvc 4 索引视图没有从Searchbox partial发出的ajax调用中收到list partial?
对于Asp.net mvc 4 索引视图没有从Searchbox partial发出的ajax调用中收到list partial?,asp.net-mvc-4,Asp.net Mvc 4,对于\u搜索框部分,我有以下部分视图 @model ecomm2.Models.MainSearchBoxViewModel <div id="search-box-wrapper" style="text-align:center"> <div id="search-box-div" style="display:inline-block"> @using (Ajax.BeginForm("GetResults", "Partials", new Ajax
\u搜索框
部分,我有以下部分视图
@model ecomm2.Models.MainSearchBoxViewModel
<div id="search-box-wrapper" style="text-align:center">
<div id="search-box-div" style="display:inline-block">
@using (Ajax.BeginForm("GetResults", "Partials",
new AjaxOptions {
HttpMethod="get",
InsertionMode=InsertionMode.Replace,
OnSuccess="updateMainResultsDiv",
UpdateTargetId="divMainResultsList"}))
{
<table>
<tr>
<td>
<fieldset>
<label>Search: </label>
</fieldset>
</td>
<td>
<fieldset>
@Html.DropDownListFor(m => m.ProdCatId, Model.MainSearchDDLCollection, new { style="width:200px;"})
</fieldset>
</td>
<td> </td>
<td>
<fieldset>
<input type="text" name="SearchText" style="width:400px"/>
</fieldset>
</td>
<td> </td>
<td><input type="submit" value="Search" /></td>
</tr>
</table>
}
</div>
</div>
<br />
然后,我在主页
控制器的索引
视图中有以下代码
@model IEnumerable<ecomm2.Models.HomeSearchResultsViewModel>
@{
ViewBag.Title = "Index";
}
<h2>Welcome Admin,</h2>
<p>
</p>
<div id="divMainResultsList">
@Html.Partial("_SearchResultsList", Model)
</div>
<script type="text/javascript">
function updateMainResultsDiv() {
$('#divMainResultsList').html()
}
</script>
@model IEnumerable
@{
ViewBag.Title=“Index”;
}
欢迎管理员,
@Html.Partial(“\u SearchResultsList”,模型)
函数updateMainResultsDiv(){
$('#divMainResultsList').html()
}
当我将一个值传递给搜索框并执行搜索时,它显示操作方法GetResults
收到了搜索值,LINQ生成了结果,但结果没有放在div区域。这个div放在正确的位置吗
使用
id=“divMainResultsList”
调用ajax方法返回部分视图并插入到div中,然后立即调用函数updateMainResultsDiv()
清除它(从ajax.BeginForm()
中删除OnSuccess
选项),这似乎有点复杂虽然我认为您可能还有其他一些错误well@StephenMuecke函数updateMainResultsDiv()是否负责将返回的部分放在div区域?因此,基本上新的结果将清除旧的部分调用?不。这就是您的Ajax.BeginForm()
所做的-它调用函数,然后将返回的部分插入到UpdateTargetId
指定的元素中。删除updateMainResultsDiv()
脚本和OnSuccess
选项-但这不是你唯一的问题-再多给我一点time@StephenMuecke好的!:)
@model IEnumerable<ecomm2.Models.HomeSearchResultsViewModel>
@{
ViewBag.Title = "Index";
}
<h2>Welcome Admin,</h2>
<p>
</p>
<div id="divMainResultsList">
@Html.Partial("_SearchResultsList", Model)
</div>
<script type="text/javascript">
function updateMainResultsDiv() {
$('#divMainResultsList').html()
}
</script>