从jquery数组返回值
我创建了一个简单的html,它可以枚举名字,上面有人的名字作为类。然后我得到类名并对照数组进行检查。结果未定义。这是我的密码:从jquery数组返回值,jquery,arrays,Jquery,Arrays,我创建了一个简单的html,它可以枚举名字,上面有人的名字作为类。然后我得到类名并对照数组进行检查。结果未定义。这是我的密码: var prof_name = $(this).attr('class'); var n = prof_name.split(' '); var name_out = n[0]; var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'}; var nameValue = nameList.na
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList.nameout;
alert(nameValue); //this pops up as undefined
alert(nameList.rom) // this pops up as 'Rommel Santiago'
我错过了什么
谢谢。问题是您引用的数组不正确。我假设你的
$(这个)
的类名是romholy
您正在像这样检索rom
:var name\u out=n[0]代码>
您需要在名称列表
中引用rom
键,如下所示:
var nameValue = nameList[name_out];
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert(nameValue); //this pops up as Rommel Santiago
<div id="myDiv" data-name="Rommel Santiago"></div>
执行此操作后,更新的代码将如下所示:
var nameValue = nameList[name_out];
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert(nameValue); //this pops up as Rommel Santiago
<div id="myDiv" data-name="Rommel Santiago"></div>
工作示例:
此外
我建议您不要使用类来存储数据
您可以使用数据
属性标记,如下所示:
var nameValue = nameList[name_out];
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert(nameValue); //this pops up as Rommel Santiago
<div id="myDiv" data-name="Rommel Santiago"></div>
问题是您引用的数组不正确。我假设你的$(这个)
的类名是romholy
您正在像这样检索rom
:var name\u out=n[0]代码>
您需要在名称列表
中引用rom
键,如下所示:
var nameValue = nameList[name_out];
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert(nameValue); //this pops up as Rommel Santiago
<div id="myDiv" data-name="Rommel Santiago"></div>
执行此操作后,更新的代码将如下所示:
var nameValue = nameList[name_out];
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert(nameValue); //this pops up as Rommel Santiago
<div id="myDiv" data-name="Rommel Santiago"></div>
工作示例:
此外
我建议您不要使用类来存储数据
您可以使用数据
属性标记,如下所示:
var nameValue = nameList[name_out];
var prof_name = $(this).attr('class');
var n = prof_name.split(' ');
var name_out = n[0];
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert(nameValue); //this pops up as Rommel Santiago
<div id="myDiv" data-name="Rommel Santiago"></div>
我相信OP希望使用name\u out
的值作为名称列表的索引,在这种情况下:
var nameValue = nameList.nameout;
应该是:
var nameValue = nameList[name_out];
我相信OP希望使用name\u out
的值作为名称列表的索引,在这种情况下:
var nameValue = nameList.nameout;
应该是:
var nameValue = nameList[name_out];
正如他们所说
它与此配合使用
var prof_name = "rom holy";
var n = prof_name.split(' ');
var name_out = n[0];
alert("Parameter Selected = "+name_out);
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert("From Object : "+nameValue); //this pops up as undefined
alert("Actual Value = "+nameList.rom) // this pops up as 'Rommel Santiago'
如果您像nameList.nameout一样调用,它实际上是在nameList中作为参数搜索nameout
如果使用nameList[nameout],它将搜索索引nameout值 正如他们所说
它与此配合使用
var prof_name = "rom holy";
var n = prof_name.split(' ');
var name_out = n[0];
alert("Parameter Selected = "+name_out);
var nameList = {'rom':'Rommel Santiago','holy':'Holiander Fields'};
var nameValue = nameList[name_out];
alert("From Object : "+nameValue); //this pops up as undefined
alert("Actual Value = "+nameList.rom) // this pops up as 'Rommel Santiago'
如果您像nameList.nameout一样调用,它实际上是在nameList中作为参数搜索nameout
如果使用nameList[nameout],它将搜索索引nameout值 嗨,阿克塞尔,我仍然得到同样的结果。如果我向nameList.name\u发出警报,我将无法定义。如果我提醒nameList.rom,那么我会得到值。name_out值的格式似乎不正确。您可以发布您试图从中检索这些值的HTML吗?我已经用解决方案更新了我的答案。我相信您只是错误地引用了数组。嗨,Axel,我仍然得到相同的结果。如果我向nameList.name\u发出警报,我将无法定义。如果我提醒nameList.rom,那么我会得到值。name_out值的格式似乎不正确。您可以发布您试图从中检索这些值的HTML吗?我已经用解决方案更新了我的答案。我相信您只是错误地引用了数组。