.ajax得到保持数据在控制器中保持为空
问题描述:
我想用下面的函数来获取一些数据。.ajax得到保持数据在控制器中保持为空
function SaveData() {
var value = $('#tblRadio').find('input[type="radio"]:checked').val();
$.ajax({
type: "POST",
url: '/home/IsEmployeeVoted',
success: function (result) {
alert(result); // shows whole dom
if (parseInt(result) > 0) {
$('div.dvVoteWrapper').removeAttr('style');
$('div.popupArea').removeAttr('style');
}
else {
window.location = '/home/EmployeeVote?regoinID='+ value;
}
},
error: function() {
alert("Sorry, The requested property could not be found.");
}
});
}
控制器功能:
public ActionResult EmployeeVote(string regionID)
{
}
regionId保持未来空到我虽然变量的值,在JavaScript中有一定的价值。有任何想法吗 ??
答
变化
data: 'regionID=' + value,
到
data: {regionID: value},
您需要将数据作为对象常量。另一种选择(我不推荐),这是更接近你的想法:
url: '/home/IsEmployeeVoted?regoinID=' + value,
但是,如果你想要这个工作,你将需要删除的type: 'POST'
(因为GET是默认的类型)。
答
几个问题:
var value = $('#tblRadio').find('input[type="radio"]:checked').val();
我会确保value
不是未定义/空。
在ajax调用之前使用alert(value)
。
此外,您正在指定GET
,但POSTING
数据到服务器。例如,你也可以将regionId包装在一个javascript对象中。
$.ajax({
type: "POST",
data: { regionID: value },
url: '/home/IsEmployeeVoted',
success: function (data) {
alert(data); // shows whole dom
if (parseInt(data) > 0) {
$('div.dvVoteWrapper').removeAttr('style');
$('div.popupArea').removeAttr('style');
}
else {
window.location = "/home/EmployeeVote";
}
},
error: function() {
alert("Sorry, The requested property could not be found.");
}
});
网址:“/家庭/ IsEmployeeVoted” +值,可能有很大帮助...... – 2013-02-13 12:27:59
@ankur是什么,当你击中控制器行动浏览器的网址是什么? – 2013-02-13 12:39:25
@DipeshParmar你已经错过了URL – 2013-02-13 12:39:56