以编程方式设置值时触发InputBox的更改事件

时间:2017-01-18 07:54:26

标签: jquery html

如果使用来自SelectBox的值更改此InputBox的值,如何触发InputBox的OnChange事件?目前它无法正常工作。

$('select').on('change', function() {
  $('#textbal').val(this.value);
  var a = this.value;
  $('#textball').attr('value', a);

});
$('textball').trigger('change', function() {
  alert('hi');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
  <option value="1">One</option>
  <option value="2">Two</option>
</select>
<input type="text" name="bal" id="textbal" />

2 个答案:

答案 0 :(得分:1)

您需要使用.on()附加事件处理程序并使用.trigger()来执行事件处理程序。

&#13;
&#13;
$('select').on('change', function() {
  $('#textbal').val($(this).val()).trigger('change');
});
$('#textbal').on('change', function() {
  console.log($(this).val());
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
  <option>select</option>
  <option value="1">One</option>
  <option value="2">Two</option>
</select>
<input type="text" name="bal" id="textbal" />
&#13;
&#13;
&#13;

答案 1 :(得分:-1)

做这样的事

<html>
    <head>
    <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
    </head>
    <select>
        <option value="1">One</option>
        <option value="2">Two</option>
    </select>
    <input type="text" name="bal" id="textbal" onchange="Change()"/>
    <script type="text/javascript">
            $('select').on('change', function() {
              $('#textbal').val( this.value );
              debugger;
              var a = this.value;

              alert(a);

              $('#textball').attr('value',a);
              $('#textbal').trigger('change');
            });

            function  Change()
            {
               alert('Hii');
            }
    </script>
    </html>