本文介绍了我如何添加一个jQuery .data()属性到一个下拉列表选项元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 我试图使用jQuerys .data()添加一些额外的数据到下拉列表中的元素,下拉列表是填充属性和我想要的ID在那里,但是当我尝试访问数据时显示未定义。 人口代码。 $ .each(tutorArray,function( index,item){ var TID = item.T.Id $ .each(item.T.TimeList,function(ind,i){ $(ddl).append($ ('< option>< / option>')。val(i.StartTime).html(i.StartTime +' - '+ i.EndTime).data({ TID:TID })); }); }); 存取码 var time(code)$(ddl).bind('change',function(){ = $(this).val(); showConfirmRequestTutorCallDialogue(d,time,$(ddlDurationSelector).val(),$(this).data(TID),$(ddlStudiesSelector)。 val())} }); 解决方案从我的研究看来,这是不可能的.data()需要位于不在子部件上的元素上。所以它不能附加到< option> 元素 我所做的是将数据包含在当值被访问时,值字段会将其分开。 设置代码 var element = $('< option> ;< /选项>'); element.val(i.StartTime + - + TID).html(i.StartTime +' - '+ i.EndTime); 存取码 var str = $(this).val(); var substr = str.split(' - '); var time = substr [0]; var TID = substr [1]; I am trying to add some extra data using jQuerys .data() to a element on a dropdownlist, the dropdown list is populating property and the ID I want is there, but when I try and access the data is showing up and undefined.Population code. $.each(tutorArray, function(index, item){ var TID= item.T.Id $.each(item.T.TimeList, function(ind, i) { $(ddl).append($('<option></option>').val(i.StartTime).html(i.StartTime + ' - ' + i.EndTime).data({ TID: TID })); }); });access code$(ddl).bind('change', function() { if($(this).val() != '') { var time = $(this).val(); showConfirmRequestTutorCallDialogue(d, time, $(ddlDurationSelector).val(), $(this).data("TID"), $(ddlStudiesSelector).val()) } }); 解决方案 So looks from my research that this is not possible the .data() needs to be on a element not on a sub part. So it cant be attached to a <option> elementWhat I did instead was to include the data within the value field then split it out when the value was accessed.Set Code var element = $('<option></option>'); element.val(i.StartTime +"--" +TID).html(i.StartTime + ' - ' + i.EndTime);Access Code var str = $(this).val(); var substr = str.split('--'); var time = substr[0]; var TID = substr[1]; 这篇关于我如何添加一个jQuery .data()属性到一个下拉列表选项元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-21 01:41