<input type="text" value="Here" id="aaa"> <br />
<span id="check">check</span>
$('#check').click(function(){
alert($('input [value="Here"]').attr('id'));
})
なぜこれが機能しないのですか?セレクター VALUE で属性を取得するにはどうすればよいですか?
<input type="text" value="Here" id="aaa"> <br />
<span id="check">check</span>
$('#check').click(function(){
alert($('input [value="Here"]').attr('id'));
})
なぜこれが機能しないのですか?セレクター VALUE で属性を取得するにはどうすればよいですか?
value='here'
要素と属性セレクターの間にスペースを使用しないでください。現在、セレクターは入力要素内の属性を持つ要素を見つけようとしています。次のことを試してください。
$('#check').click(function(){
alert($('input[value="Here"]').attr('id'));
})
スペースを削除する必要があります:
alert($('input[value="Here"]').attr('id'));
セレクターのスペースを削除します。
$('input[value="Here"]').attr('id')
スペースは「の子孫」を意味します。
指定された属性の値を含むすべての要素を取得する便利な関数 (ここから取得) を次に示します。
var getAllElementsWithAttribute = function (attribute) {
var matchingElements = [];
var allElements = document.getElementsByTagName('*');
for (var i = 0; i < allElements.length; i++) {
if (allElements[i].getAttribute(attribute)) {
matchingElements.push(allElements[i]);
}
}
return matchingElements;
};