我如何去有關選擇擁有jQuery中相同的屬性值的元素。然後比較其中哪些具有更大的價值。
這是我到目前爲止。我遇到的問題是,如果這一對中的第一個數字是較大的數字,我就不會得到任何輸出。查找和比較匹配的屬性值的元素在jQuery中
<script>
$(function(){
var j = [];
$('.loo').each(function(index){
var grp = $(this).attr('data-x');
var num = $(this).val();
var id = $(this).attr('id');
var pair_val = pair_value(grp);
var pair_id = pair_identity(id);
console.log(get_max(num, pair_val, id, pair_id));
});
function get_max(num1, num2, id1, id2){
var decide = 0;
if(num1 > num2){
decide = id1;
}else{
decide = id2;
}
return decide;
}
function pair_value(conn){
var pair = $("input[data-x="+ conn +"]").val(); //my problem is here
return pair;
}
function pair_identity(conn){
var pair_id = $("input[data-x="+ conn +"]").attr('id'); //my problem is here
return pair_id;
}
});
</script>
HTML:
<p>
<input type="text" id="e" name="e" class="loo" value="1" data-x="a">
</p>
<p>
<input type="text" id="f" name="f" class="loo" value="10" data-x="a">
</p>
<p>
<input type="text" id="g" name="g" class="loo" value="37" data-x="b">
</p>
<p>
<input type="text" id="h" name="h" class="loo" value="25" data-x="b">
</p>
<p>
<input type="text" id="i" name="i" class="loo" value="11" data-x="c">
</p>
<p>
<input type="text" id="j" name="j" class="loo" value="12" data-x="c">
</p>
它沒有任何效果。我想問題是,匹配這個選擇器的第一個元素是總是被選中的元素。這就是爲什麼它不能確定更大的數字,如果安排改變了,請幫我修正這段代碼:$(「input [data-x =」+ conn +「]」)。val(); –