2016-03-31 38 views
1

我想在用戶更改選定的值後執行某些操作,使用此代碼我只需要 想要從所選值中獲取值,而不是兩者。如何使用jQuery觸發特定選擇框更改?

到目前爲止,我有這樣的:

Issiue的代碼是隻有第一個觸發器。

<div class="colname"> 
    <label for="input">Input</label>                
    <select name="input" class="input"> 
     <option>Test1</option> 
     <option>Test2</option> 
    </select> 
</div> 
<div class="colname"> 
    <label for="kostnad">Input</label>               
    <select name="input" class="input"> 
     <option>Test1</option> 
     <option>Test2</option> 
    </select> 
</div> 
<script> 
    $('.input').change(function(){ 
     var ok = $(this).val(); 
      if(ok == 1) 
      // do that and this 

    }); 
</script> 
+1

使用'$(本).VAL()'內'更改'select'的事件處理程序。 – Tushar

+0

TypeError:elem.nodeName未定義 – sdfgg45

回答

1

請檢查這完全正常的片段

$('.input').change(function(){ 
 
     $("#value").html($(this).val()) 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="colname"> 
 
    <label for="input1">Input</label>                
 
    <select name="input1" class="input"> 
 
     <option value="input1">Test1</option> 
 
     <option value="input2">Test2</option> 
 
    </select> 
 
</div> 
 
<div class="colname"> 
 
    <label for="kostnad">Input</label>               
 
    <select name="kostnad" class="input"> 
 
     <option value="kostnad1">Test1</option> 
 
     <option value="kostnad2">Test2</option> 
 
    </select> 
 
</div> 
 
<div class="colname"> 
 
    <label id="value"></label> 
 
</div>

您需要使用$(this).val()

$('.input').on('change',function(){ 

$(this).val() 
//use here 

}); 

詩篇。該值將取決於option值。

<option value="option1">option 1<\option> 
+0

它只會觸發第一個元素更改,而不是2,3等等。 – sdfgg45

+0

@ sdfgg45剛剛更新 –

+0

我也添加了值字段,但它會在2日,3日等等發生反應。 – sdfgg45

0

使用此:

$('.input').on("change", function(){ 
    var value = $(this).val(); 
    console.log(value); 
}); 

注意:您已經把value屬性在​​3210標籤這樣

<div class="colname"> 
    <label for="input">Input</label>                
    <select name="input" class="input"> 
     <option value="Test1">Test1</option> 
     <option value="Test2">Test2</option> 
    </select> 
</div> 
+0

它只會觸發第一個元素更改,而不是2,3等等。 – sdfgg45

+0

您對所有人都有同樣的選擇和價值。更改2和3的值。我認爲一切都會好的。 –

相關問題