大家好日子,
我使用jQuery的.getJSON()方法从数据库(通过PHP脚本)撤回一些数据。这一切都很好,数据恢复正常并且符合预期。当我尝试将数据传递给辅助函数时,无论我如何尝试访问它们作为未定义返回的数据的值,都会出现问题。我有一种感觉,我忽略了一些非常简单的事情,但经过大量的反复试验,我来到SO那里寻求额外的一双眼睛。
以下是JavaScript代码的一个简单示例。
function fnCheck_Vis(Row, sField, sMode)
{
sField = sField+"_vis";
sTest = Row.sField.val();
alert(sTest); // Comes back as undefined.
}
$(document).ready(function()
{
$("#btnSearch").click(function()
{
$("#divResults").empty();
var ssearch = $("#ssearch").val();
var i = 0;
$.getJSON("get_results.php?keywords=" + ssearch,
function(Data)
{
var iRec = 0;
$.each(Data, function(i, Row)
{
fnCheck_Vis(Row, "slinkpic1", "Int");
var content = Row.slast;
$("#divResults").append(content);
iRec++;
});
alert(iRec + " records retrieved using AJAX.");
});
});
});
fnCheck_Vis()函数的第一部分工作正常,“_vis”附加到字段名称,这是正确的行为。无论我如何尝试访问数据集(行)中的成员,我都无法获得值。
我非常感谢能够在这个问题上提供任何见解。
谢谢,
尼古拉斯
答案 0 :(得分:3)
您好像想要访问名称存储在Row
中的sField
的属性,而不是其实际的sField
属性。尝试:
function fnCheck_Vis(Row, sField, sMode)
{
sField = sField + "_vis";
var sTest = Row[sField];
alert(sTest);
}