2016-09-16 2 views
0

私にはこちらの解決方法を教えてください。ここでもオプションタグのIDを取得できません。 私はそのデータリストのIDを見つけるためだけに多くのコードを実行してくれます。複雑にIdを見つけるには選択したデータリストのオプションから

<script> 
 
function myFunction() { 
 
    var x = document.getElementById("browsers").options.id; 
 
    alert(x); 
 
} 
 
</script>
<!DOCTYPE html> 
 
<html> 
 
<body> 
 

 
<form> 
 
    <input list="browsers" name="browser"> 
 
    <datalist id="browsers"> 
 
    <option id="1" value="Internet Explorer"> 
 
    <option id="2" value="Firefox"> 
 
    <option id="3" value="Chrome"> 
 
    <option id="4" value="Opera"> 
 
    <option id="5" value="Safari"> 
 
    </datalist> 
 
</form> 
 
<button onclick="myFunction()">Try it</button> 
 

 
<p id="demo"></p> 
 

 

 

 
</body> 
 
</html>

答えて

1

ウェイあなたの例インチvalueoptionを選択するだけです。また、inputidは、ではなく、#code1であることに注意してください。

var g = $('#code1').val(); 
 
var id = $('#datalist1 option[value=' + g +']').attr('data-id'); 
 
// var id = document.querySelector('#datalist1 option[value=' + g +']').dataset.id; 
 

 
console.log(id);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<input type="text" name="srch1" id="code1" value="b" /> 
 
<datalist id="datalist1"> 
 
    <option data-id="1" value="a"></option> 
 
    <option data-id="2" value="b"></option> 
 
    <option data-id="3" value="c"></option> 
 
</datalist>

+0

OK感謝しかし、ここで私は '' 未定義 '' IDを得ました。 –

+0

私の例はうまくいっているのですか? @mayureshkapdule – eisbehr

+0

あなたのスニペットで私はログを参照してくださいが、私はあなたのコードを使用してoutpute id = "undefined"を取得します。 –

関連する問題