jQuery – 将字符串视为变量名并返回其值
我有许多包含文本字符串的变量,并希望根据单击的元素选择应显示的变量。
下面的代码是我正在尝试做的非常简化的版本,目前它将.msgBox的innerHTML设置为’A_msg’或’B_msg’,我想要它做的是将它设置为那些值变量。
var A_msg = "You clicked A"; var B_msg = "You clicked B"; $(".trigger").mouseover(function() { var MsgToDisplay = $(this).attr('id')+"_msg"; $('#msgBox').html(MsgToDisplay); }); Option A Option B
你应该使用一个对象:
var messages = { A: "You clicked A", B: "You clicked B" }; $(".trigger").mouseover(function() { var MsgToDisplay = messages[$(this).attr('id')]; $('#msgBox').html(MsgToDisplay); });
您可以编写messages[someString]
以按名称获取property的值。