请帮帮我!
我的div
页面中有一些_layout.cshtml
有一些银行的图片。每张图片都有id
,比方说id "Jonota","Sonali","Rupali"
等等。现在,我正在使用jquery
,因此当每个image
为clicked
时,
我想将该图片的id
传递给我的controller
。
我的jquery看起来像:
var a = $('div#banksBody img').size();
a.each($('div#banksBody img').click(function () {
$(this).addClass('bankIcons'); // this class is just for making the cursor > pointer in css
var id = this.id;
$.ajax({
url: "Home/Test",
type: "POST",
traditional:true,
data: JSON.stringify(id),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (result) {
if (result!="") {
alert(result);
}
});
}));
我的控制器看起来很简单:
[HttpPost]
public JsonResult Test(string id)
{
return Json(id , JsonRequestBehavior.AllowGet);
}
我错过了什么?
答案 0 :(得分:0)
您必须在帖子请求中提供参数名称:
$.ajax({
url: "Home/Test",
type: "POST",
data: {'id' : JSON.stringify(id)}
});
答案 1 :(得分:0)
请检查代码data: JSON.stringify(id),
我认为 stringify 还需要一个参数
考虑到这一点,试试这个:
data: {"id":id},
答案 2 :(得分:0)
您可以尝试以下代码
$("#banksBody>img").each(function() {
$(this).click(function(){
var id = $(this).attr('id');
});
});
答案 3 :(得分:0)
试试这个
$("#banksBody>span").each(function() {
$(this).click(function(){
var id = $(this).attr('id');
$.ajax({
url: "Home/Test",
type: "POST",
traditional:true,
data: {id:id},
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (result) {
if (result!="") {
alert(result);
}
});
});
});