【发布时间】:2018-06-08 09:35:44
【问题描述】:
function showData(){
Object.keys(JSONcall).forEach(function(key){
var tvShow = JSONcall[key].show;
$('#show-select').append("<option class=\"selectS\"" +
"id=\"" + key + "\"" + "value=\"JSONcall[" + key + "]
.show\" onchange=\"selectShow(this.id)\">" + tvShow.name + "</option>");
});
}
你好,我有这个forEach 循环,其中的功能是附加 JSON 对象的结果。追加后的结果是:
<option class="selectS" id="0" value="JSONcall[0].show"
onchange="selectShow(this.id)">Some Value</option>
第一个问题:像这样附加onchange=(function()) 是否明智?
selectShow(value) 是一个函数,用于获取 <option> 的 id 并在另一个 <div> 中显示数据。
最后一个问题是为什么我无法在这种情况下获得this.id 的结果?
【问题讨论】:
-
您可能希望在 select 元素上使用 onchange 属性和 selectedIndex
-
你可以试试建议吗
-
这对你有用吗??
-
您也可以使用
$('.someClass').data()从元素中附加和检索数据,而无需将数据存储在多个位置。
标签: javascript jquery foreach this onchange