的JavaScript运行时错误:无法获取的未定义或空引用
问题描述:
我收到弹出的Undefined
,并显示如下错误性质“DOMAIN_NAME”:的JavaScript运行时错误:无法获取的未定义或空引用
Unable to get property 'domain_name' of undefined or null reference.
可以在此
任何机构帮助从查看:
@Html.ActionLink("Details", "",
new { id = item.id },
new { onclick = "someFunction(" + item.id + ")",
href = "javascript:void(0)" })
的Javascript
function someFunction(id) {
$.ajax({
type: 'POST',
url: '@Url.Content("~/")Contracts/Test/',
data: { 'id': id },
dataType: 'json',
success: function (data) {
alert(data.domain_name);
},
error: function (xhr, status, exception) {
alert("Error: " + exception + ", Status: " + status);
}
});
}
控制器动作
enter code here
public JsonResult Test(int id)
{
var result = (from cntrct in db.contracts where cntrct.id == id
select new { cntrct.domain_name, cntrct.id}).ToArray();
return Json(result);
}
下面是我“米分贝越来越但是不能传递给JavaScript回数据。
错误
SCRIPT7002:XMLHttpRequest的:网络错误0x2ef3,无法完成因错误00002ef3操作。 合同
答
Oohoo!最后我得到了这个......我们需要做的只是alert(data [0] .domain_name); :)
+0
这并没有提供问题的答案。要批评或要求作者澄清,在他们的帖子下留下评论 - 你可以随时评论你自己的帖子,一旦你有足够的[声誉](http://stackoverflow.com/faq#reputation),你将能够[评论任何帖子](http://stackoverflow.com/privileges/comment)。 – slfan 2013-05-06 16:24:57
答
你可以试试这个在JSON操作方法
行动
public JsonResult Test(int id)
{
var result = (from cntrct in db.Contracts where cntrct.ID == id
select new { cntrct.domain_name, cntrct.id, cntrct......}).ToArray();
return Json(result);
}
脚本
function someFunction(id) {
$.ajax({
type: 'POST',
url: '@Url.Content("~/")Contracts/Test/',
data: { 'id': id },
dataType: 'json',
success: function (data) {
alert(data.domain_name);
}
});
}
所以错误是因为从Json ActionResult传回的数据为空;你可以验证该ID是否正确传递给'someFunction',并且具有相应的id值的合约存在于数据库中? – kieran 2013-05-06 08:11:23
感谢您的快速响应。使用该ID值存在于数据库中,但无法将该数据传回至JavaScript .. – Mukarram 2013-05-06 08:17:23
HTML的ID不应仅为数字。 – Shikiryu 2013-05-06 09:27:42