我正在开发MVC应用程序。
我想将列表中的值传递给控制器,
以下代码是显示产品列表......它显示完美。
@using (Html.BeginForm("Create", "Order", FormMethod.Post, new { enctype = "multipart/form-data", id = "frmCreate" }))
{
@Html.ValidationSummary(true)
<div class="row-fluid">
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Section Name</th>
<th>Quantity</th>
</tr>
</thead>
<tbody>
@foreach (var item in ViewBag.ProductList)
{
<tr>
<td >@item.SectionName</td>
<td >@item.Quantity</td>
</tr>
}
</tbody>
</table>
<span class="span12 alert alert-success" id="status-message" style="margin-bottom:10px;"><strong>Your Order has been sent to HO sucessfully.</strong><a href="#" id="CheckOrder" onclick="submitForm()" style="font-size:14px;text-decoration:none;margin-right:10px;">Clcik Here </a> to check status. Please click on back button to view list.</span>
}
现在,当我点击上面的链接时,我想将数据传递给控制器中的方法。
我编写了下面的代码,它调用了控制器的方法,但列表中没有包含任何项目。它显示空值。如何使用ajax传递列表?
代码有什么问题?
<script type="text/javascript">
$(document).ready(function () {
$('#CheckOrder').click(function(){
$.ajax({
url: '@Url.Action("DATACoME")' + '?List=@ViewBag.ProductList'
}).done(function(){
//do something
});
});
</script>
答案 0 :(得分:0)
试试这个:
<script type="text/javascript">
$(document).ready(function () {
$('#CheckOrder').click(function(){
$.ajax({
url: '@Url.Action("DATACoME")',
data: {parameterNameFromTheController: '@ViewBag.ProductList'}
}).done(function(){
//do something
});
});
</script>