2017-11-09 13 views
1

リストの値を取得するためにJavaScriptを作成しましたが、ウィンドウの端には戻り値1があり、実際の値は<li>です。例については

HTMLコードMSエッジ属性の空白値を1に変更

<ul> 
    <li value="">Test 1</li> 
    <li value="a">Test 2</li> 
    <li value="b">Test 3</li> 
</ul> 

Javascriptを/ jQueryのコード

$('ul').find('li').each(function(){ 
    console.log($(this).attr('value')); //1st <li> value is showing "1", it should be blank as it is set already 
}); 


コードは、それがマイクロソフトエッジのために働いていない他のすべてのブラウザで正常に動作しています
ここにjsfiddleリンクがあります:http://jsfiddle.net/53sos61u/

+0

* "こちらはjsfiddleリンクです" *さらに良いサイトになる** Stack Snippet; [これを行う方法はこちら](https://meta.stackoverflow.com/questions/358992/ive-been-told-to-do-a-runnable-example-with-stack-snippets-how-do-i-ドtha)。 –

+0

@ T.J.Crowderはい、私はあなたに同意します、それはデータ値でなければなりません。しかし、どこにでもコードを追加しました。状況はコードを変更できないようなものなので、javascriptに少し修正が必要です。何か方法はありますか? – KRY

+0

私はそうは思わない。どうして私の答えを見てください。 –

答えて

0

これは、カスタム属性にdata- prefixを使用することが重要な理由です。

valuea meaning for li elementsがあります

value属性が存在する場合、リスト項目のordinal valueを与えるvalid integerでなければなりません。理論的には

、それだけでolの内部li秒間だが、... (これは新しいものではありません。それは同様in the HTML4 specだ、特徴的にあまりよく定義されたのに...)

したがって、他の何か、信頼性の高い、クロスブラウザで使用するためには、data-valueに変更する必要があります。

関連する問題