2016-12-27 96 views
0

我試圖通過使用chrome控制檯在存儲選擇框上使用.change來更改價格結果,但會發生什麼情況是價格不會更新。jquery選擇框的選擇值不會改變結果

我試過不同的其他方式,如.click.trigger,仍然選擇框之間來回切換16GB到64GB,但價格不會更新。只有當我用鼠標手動更改選擇框的值時,價格纔會更新。

什麼可能導致它不能切換?有沒有其他的方法來通過代碼觸發事件?

***編輯:這不是我的代碼,我只是想了解如何獲得數據,如果.click不通過控制檯工作

enter image description here

+1

哪裏是你的代碼? – Dekel

+0

對不起,我應該精確它不是我的代碼,但即時通訊尋找如何模仿點擊這個代碼 – m3kkis

回答

0

click()方法不除非您明確要觸發該事件。

我已經添加了一個click()事件監聽器,並在此處調用上次更改。

var select = $("#test_select"); 
 

 
select.on('click', function() { 
 
    alert('click event'); 
 
}); 
 

 
setTimeout(function() { 
 
    select.val("2"); 
 
}, 1000); 
 
setTimeout(function() { 
 
    select.val("3"); 
 
}, 2000); 
 
setTimeout(function() { 
 
    select.val("4"); 
 
}, 3000); 
 
setTimeout(function() { 
 
    select.val("5").click(); 
 
}, 4000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select name="test" id="test_select"> 
 
    <option value="1" selected>1</option> 
 
    <option value="2">2</option> 
 
    <option value="3">3</option> 
 
    <option value="4">4</option> 
 
    <option value="5">5</option> 
 
</select>

+0

是的,這是事情,我希望事件發生,但它只會改變,當我手動點擊它 – m3kkis

+0

嗯......它按照預期在此更新的示例中工作。你如何建立你的選擇?例如這是嗎? ''option value =「16gb」> 16gb'因爲'val()'方法是在數值部分搜索,而不是文本部分:'' – abigperson