我已经在部分视图中搜索了部分列表。
正如您从图像中看到的那样,我在此应用程序中有多个 partialView。
所以我的问题
每当我为网格创建搜索过滤器时,我都必须创建另一个视图和部分视图来显示成功结果。如何在同一个局部视图中显示过滤后的搜索列表,并且不需要再次为该列表创建成功的局部视图?
我已经搞定了-
来自数据库的渲染列表-
public ActionResult _ProductSearchList() {
List<ProductModel> product;
product = (from u in db.ProductTables
select new ProductModel {
productname = u.ProductName,
productprice = Convert.ToInt32(u.ProductPrice),
productID = u.ProductID,
dateaddproduct = Convert.ToDateTime(u.ProductAddDate)
}).ToList();
return PartialView(product);
}
搜索记录-
<div>
<legend>Prducts</legend>
<input type="text" id="search-products" />
@Html.Action("_ProductSearchList", "LedgerIndex")
</div>
检索记录的脚本 -
<script type="text/javascript">
$(function () {
$('#search-products').keyup(function () {
var serachstring = $(this).val();
$.ajax({
url: '/Product/JsonSearchProduct/?stringSearched=' + serachstring,
type: 'get',
datatype: 'json',
success: function (data) {
JSON.stringify(data);
}
});
});
});
</script>
Json导致控制器 -
public JsonResult JsonSearchProduct(string stringSearched) {
List<ProductModel> product;
product = (from u in db.ProductTables
where u.ProductName.Contains(stringSearched)
select new ProductModel {
productID = u.ProductID,
productname = u.ProductName,
productprice = Convert.ToInt32(u.ProductPrice),
dateaddproduct = Convert.ToDateTime(u.ProductAddDate)
}).ToList();
return Json(product, JsonRequestBehavior.AllowGet);
}
因此,当我搜索 String 时M
,它会检索记录并仅显示包含M
其名称的记录。
现在这个过滤结果JSON
就是我想在同一个部分视图中过滤的结果,而不创建额外的部分视图。