jQuery獲取選擇onChange的值


Answers

我的印像是,我可以通過執行$(this).val()來獲得選擇輸入的值。

如果你不加介入地訂閱(這是推薦的方法),這將起作用:

$('#id_of_field').change(function() {
    // $(this).val() will work here
});

如果您使用onselect並將標記與腳本混合使用,則需要將引用傳遞給當前元素:

onselect="foo(this);"

接著:

function foo(element) {
    // $(element).val() will give you what you are looking for
}
Question

我的印$(this).val(); ,我可以通過執行$(this).val();來獲得選擇輸入的值$(this).val(); 並將onchange參數應用於選擇字段。

它會出現它只有在我參考ID時才有效。

我該如何做到這一點。




這對我來說很有用。 嘗試一切都沒有運氣:

<html>

  <head>
    <title>Example: Change event on a select</title>

    <script type="text/javascript">

      function changeEventHandler(event) {
        alert('You like ' + event.target.value + ' ice cream.');
      }

    </script>

  </head>

  <body>
    <label>Choose an ice cream flavor: </label>
    <select size="1" onchange="changeEventHandler(event);">
      <option>chocolate</option>
      <option>strawberry</option>
      <option>vanilla</option>
    </select>
  </body>

</html>

採取從Mozilla




嘗試事件委託方法,這幾乎適用於所有情況。

$(document.body).on('change',"#selectID",function (e) {
   //doStuff
   var optVal= $("#selectID option:selected").val();
});



尋找jQuery site

HTML:

<form>
  <input class="target" type="text" value="Field 1">
  <select class="target">
    <option value="option1" selected="selected">Option 1</option>
    <option value="option2">Option 2</option>
  </select>
</form>
<div id="other">
  Trigger the handler
</div>

JAVASCRIPT:

$( ".target" ).change(function() {
  alert( "Handler for .change() called." );
});

jQuery的例子:

為所有文本輸入元素添加有效性測試:

$( "input[type='text']" ).change(function() {
  // Check input( $( this ).val() ) for validity here
});



請注意,如果這些不起作用,可能是因為DOM尚未加載,並且您的元素尚未找到。

要修復,請將腳本放在主體的末尾或準備好文檔

$.ready(function() {
    $("select").on('change', function(ret) {  
         console.log(ret.target.value)
    }
})



Related