Jquery擷取select option動態添加自訂屬性值失效

來源:互聯網
上載者:User

標籤:

Jquery擷取select option動態添加自訂屬性值失效2014/12/31 11:49:19 中國學網轉載 編輯:李強http://www.xue163.com/588880/39096/390963333.html

為了協助網友解決“Jquery擷取select optio”相關的問題,中國學網通過互連網對“Jquery擷取select optio”相關的解決方案進行了整理,使用者詳細問題包括:jqueryselectie9  function GetFenceItemData(type) {
            var selObj = document.getElementById("fence");
            selObj.options.length = 0;
            var arr = new Array();
            for (var i = 0; i < fencelist.length(); i++) {
                if (fencelist.elements[i].value.o_fencetype == type) {
                    arr.push(fencelist.elements[i].value);
                }
            }
            if (arr.length > 0) {
                for (var i = 0; i < arr.length; i++) {
                    var option = new Option(arr[i].o_fencename,arr[i].o_fenceid);
                    option.radius = arr[i].o_radius;
                    selObj.options.add(option);
                }
            }
        }
向ID為fence的select中添加option以及自訂屬性
 var fence = $("#fence option:selected");
 var radius = fence.attr("radius");
  alert(radius);
擷取ID為fence的select當前選中項的自訂屬性radius的值
在IE8有用,在IE9,新型瀏覽器失效,提示Undefine,這是為什嗎?
,具體解決方案如下:

解決方案1:
var radius = fence.attr("radius");   這句是擷取屬性radius吧, 你還沒添加就去擷取 肯定undefined

添加自訂的應該是  fence.attr("radius","str");

解決方案2:
參考

<select id="s"></select>
<script src="http://www.wosoni.com/www.w3school.com.cn/jquery/jquery-1.11.1.min.js"></script>
<script>
  var d=$(‘#s‘);
  for(var i=0;i<5;i++)d.append(‘<option radius="‘+i+‘">‘+i+‘</option>‘)
</script>
<input type="button" value="get" onclick="alert($(‘#s option:selected‘).attr(‘radius‘))"/>

 

解決方案3:

引用 1 樓 Ragin 的回複:
var radius = fence.attr("radius");   這句是擷取屬性radius吧, 你還沒添加就去擷取 肯定undefined

添加自訂的應該是  fence.attr("radius","str");
 var option = new Option(arr[i].o_fencename,arr[i].o_fenceid);
 option.radius = arr[i].o_radius;
 selObj.options.add(option);
 是添加了自訂屬性,再去擷取的,IE8有效,IE9失效

 

解決方案4:
設定的時候這樣:

option.setAttribute(‘radius‘,arr[i].o_radius) ;



 

解決方案5:
用jquery添加。  原生JS添加option自訂屬性不好用

解決方案6:
問題解決了,分享給大家吧....
我之前是用JS為Select動態添加自訂屬性的,然後用Jquery擷取Select選中項的自訂屬性值,在IE8有效,在IE9失效;
在網上找了很多方法,也沒有解決,後來嘗試用Jquery為Select動態添加自訂屬性,用Jquery擷取Select選中項的自訂屬性值,
經測試IE9,新型瀏覽器,都有效,由此得出,Jquery和JS在某些方面,存在不相容,如果要為Select動態添加自訂屬性,要麼都 用JS,要麼都用Jquery,可以減少不必要的麻煩!

 

Jquery擷取select option動態添加自訂屬性值失效

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.