我想從超鏈接中設置2個選擇輸入的選定選項。這構成購物車的一部分,我顯示庫存中是否有物品,如果有,用戶可以點擊它。這設置了相應選項的值。當它是整數時(這對於4.5不起作用),它不適用於大小,並且它不會設置擬合的值。使用jQuery通過超鏈接設置選定的選項
我已經把上的jsfiddle代碼在http://jsfiddle.net/jeepstone/G6Mz5/
任何想法?
非常感謝
我想從超鏈接中設置2個選擇輸入的選定選項。這構成購物車的一部分,我顯示庫存中是否有物品,如果有,用戶可以點擊它。這設置了相應選項的值。當它是整數時(這對於4.5不起作用),它不適用於大小,並且它不會設置擬合的值。使用jQuery通過超鏈接設置選定的選項
我已經把上的jsfiddle代碼在http://jsfiddle.net/jeepstone/G6Mz5/
任何想法?
非常感謝
有可能一個簡單的方法,但這是基於你已經有了你的提琴代碼:
$('.instock').bind({
click: function(e) {
e.preventDefault();
var data = $(this).attr('rel').split(',');
$('#size').find("option").filter(function() {
return $(this).text() === data[0];
}).attr('selected',true);
$('#fitting').find("option").filter(function() {
return $(this).text() === data[1];
}).attr('selected',true);
}
});
這得到所有的option
元素,然後過濾他們只留下匹配電流的那些文本。
$('.instock').bind({
click: function(e) {
e.preventDefault();
var data = $(this).attr('rel').split(',');
$('#size').find('option:contains("' + data[0].toString() + '")').attr('selected',true);
$('#fitting').find('option:contains("' + data[1].toString() + '")').attr('selected',true);
}
});
我測試你的jsfiddle鏈接,它的工作現在
唯一的問題是,我有4和4.5,我沒有得到正確的。包含4次兩次IYSWIM? – Jeepstone
所有你需要做的是設置選擇的val()
到你想要的。
參見:http://jsfiddle.net/tclayson/kE4c5/
<select id="mySelect">
<option value="1">One</option>
<option value="2">Two</option>
</select>
<br /><br />
<a href="#" id="clicked">Click</a>
當你點擊鏈接「點擊」它只是設置選擇(#mySelect)到2的值。
$(document).ready(function(){
$('#clicked').click(function(){
$('#mySelect').val('2');
return false;
});
});
因此,而不是試圖find()
要選擇的選項,您可以根據選項的值更改選擇(例如:4.5將在您的案例中爲46)。
嗯足夠公平 - 你有那裏奇怪的問題呢! :/抱歉我無法幫助 –
這對小提琴完美起作用,但不在我的網頁(內部網站)上。嗯到目前爲止的最佳答案,讓我檢查我的網頁,並回復給你。謝謝詹姆斯。 – Jeepstone
稱爲#fitting的衝突元素導致了問題。現在在內部修復。感謝您的幫助。這與Rusty Jeans之間的緊密通話,但已經得到了這個工作。認爲其他方法也應該起作用。 – Jeepstone