我尝试获取checkboxlist的选定值。我想将值发送到UrunList action.Each值将保存在Viewbag.abc中然后Viewbag将被发送创建视图(另一个视图)。但我无法从checkboxlist中获取值用javascript
脚本
<script>
$(document).ready(function ()
{
$('#urunsec').change(function () {
var id=$('#urunsec').value();
$ajax({
url:'Fatura/UrunList',
type:'POST',
data: { id: id },
success: function () {
alert('suc');
},
error: function (error) {
alert('error')
}
})
});
});
UrunList查看
@foreach (BillApplication.Models.Urunler con in Model )
{
<tr>
<td>
<input id="urunsec" type="checkbox" name="urunsec" value="@con.UrunId.ToString()" />
<input name="urunsec" type="hidden" value="false" />
</td>
<td>@con.UrunId</td>
<td>@con.UrunAdi</td>
<td>@con.UrunFiyat</td>
<td>@con.AltkategoriId</td>
<td colspan="4"></td>
</tr>
}
<tr>
<td>
<input id="Button1" type="button" value="button" onclick="location.href = '@Url.Action("Create", new { idlist= @ViewBag.abc as List<String>})'" />
</td>
</tr>
UrunList操作
[HttpPost]
public ActionResult UrunList(string id)
{
this.UrunList(id);
List<String> idlist = new List<String>();
idlist.Add(id);
ViewBag.abc= idlist;
return RedirectToAction("Create");
}
创建视图
<td><textarea id="txt_urunler" rows="2" cols="20" style="border-style:inset; width:150px; border-width:0.2em; border-color:gainsboro">
@if (@ViewBag.abc != null)
{
foreach (var i in ViewBag.abc)
{
@i
}
}
</textarea>
</td>
制作行动
public ActionResult Create(List<String> idlist)
{
string virgul = ",";
ViewBag.virgul = virgul;
if (idlist != null)
{
ViewBag.abc = idlist;
}
return View();
}
答案 0 :(得分:0)
相同的ID可能是此问题的原因。您应该尝试为每个元素分配不同的id(某些唯一值),或者您可以尝试: -
@foreach (BillApplication.Models.Urunler con in Model )
{
<tr>
<td>
<input type="checkbox" name="urunsec" value="@con.UrunId.ToString()" onclick="ClickMe(this);" />
<input name="urunsec" type="hidden" value="false" />
</td>
<td>@con.UrunId</td>
<td>@con.UrunAdi</td>
<td>@con.UrunFiyat</td>
<td>@con.AltkategoriId</td>
<td colspan="4"></td>
</tr>
}
<tr>
<td>
<input id="Button1" type="button" value="button" onclick="location.href = '@Url.Action("Create", new { idlist= @ViewBag.abc as List<String>})'" />
</td>
</tr>
<script>
function ClickMe(ref) {
var id=$(ref).value();
$.ajax({
url:'Fatura/UrunList',
type:'POST',
data: { id: id },
success: function () {
alert('suc');
},
error: function (error) {
alert('error')
}
})
}
</script>
这适用于您的情况。