div容器:
<div id="count"><span>Apple:</span>4</div>
表格下拉列表:
<select id="list" size="6">
<option selected="selected">Any Number</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5+</option>
</select>
我想将选项列表与水果计数联系起来。如果div容器的值为“Apple:4”,则选择“Option 4”,如果div值变为“Pear:3”,则应选择“Option 3”,依此类推。< / p>
以下是我到目前为止在jQuery中所做的事情:
var optionObject = document.getElementById('list');
var countValue = document.getElementById("count").childNodes[2].nodeValue;
for(var i=0; i<optionObject.length; i++){
if(optionObject.options[i].text == countValue.trim()){
optionObject.options[i].selected = true;
break;
}
}
执行后没有发生任何事情,有人可以看一下代码吗?感谢。
答案 0 :(得分:0)
var a = $('#count').text();
a = a.substr(a.length - 1, a.length);
$('#list option:eq('+a+')').prop('selected','selected');
答案 1 :(得分:0)
$('#list option:eq('+($('#count').text().split(':').pop())+')').prop('selected','selected');
答案 2 :(得分:0)
可行,只需将第二行更改为:
var countValue = document.getElementById("count").childNodes[1].nodeValue;
工作jsFiddle。
如果你有它使它适用于数字&gt; 5;)
答案 3 :(得分:0)
我建议将其用作:
var countValue = $.trim($('#count').text().match(/(\d+)/g));
$('#list').val(countValue);