这是我的HTML代码
<ul class="sb_dropdown" style="display:none;">
<li class="sb_filter">Chon the loai</li>
<li><input type="checkbox" value="All"/><label for="all"><strong>Tất cả</strong></label></li>
<li><input type="checkbox" value="Woman"/><label for="Automotive">Đồ nữ</label></li>
<li><input type="checkbox" value="Shoes"/><label for="Baby">Giày</label></li>
<li><input type="checkbox" value="Bag"/><label for="Beauty">Túi sách</label></li>
<li><input type="checkbox" value="Man"/><label for="Books">Đồ nam</label></li>
</ul>
这是我调用控件的Ajax代码。
<script>
$('.sb_search').click(function () {
var list = [];
$('ul.sb_dropdown').find("input:checkbox:checked").each(function () {
list.push($(this).val());
});
var key = { listkey: list };
$.ajax({
url: '@Url.Action("Search", "Result")',
traditional: true,
data: list,
dataType: "html",
type: 'POST',
success: function (data) {
alert("success");
},
error: function () {
alert("fail");
}
});
});
</script>
在我的控制器中,我有一个参数列表键listkey,希望当我点击搜索按钮时从视图中接收到。
public ActionResult Result()
{
return View();
}
[HttpPost]
public ActionResult Result(List<string> listkey)
{
var n = listkey;
return View();
}
当我调试时,它没有执行操作结果,并弹出失败提示。告诉我我做错了什么。请帮我解释一下为什么需要使用returnjson而不是我想使用普通的视图来显示我的结果。
我已经解决了这个问题,因为我在我的ajax中放错了动作和控制器。谢谢大家。