【问题标题】:How to detect dynamically changed input如何检测动态变化的输入
【发布时间】:2020-05-30 13:28:23
【问题描述】:

我正在研究以下 sn-p。为什么我无法使用它检测输入更改?

$("#fname").on("change", function () {
   console.log("The text has been changed.");
});

$("button").on("click", function () {
    $("#fname").text('Alex');
    $("#fname").val('Alex');
});

$("#fname").on("change", function () {
   console.log("The text has been changed.");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
 <input type="text" id="fname" name="fname"><br><br>
<button type="button">Click Me!</button>

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    只有在用户设置值时才会触发。您可以手动触发。

    $("#fname").val('Alex').change();
    

    【讨论】:

      【解决方案2】:

      如果您以编程方式应用更改,则必须以编程方式触发更改。

      $("button").on("click", function () {
          $("#fname").text('Alex').trigger('change');
          $("#fname").val('Alex').trigger('change');
      });
      
      $("#fname").on("change", function () {
         console.log("The text has been changed.");
      });
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
       <input type="text" id="fname" name="fname"><br><br>
      <button type="button">Click Me!</button>

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-01-02
        • 2019-03-07
        • 2011-09-21
        • 2018-06-13
        • 1970-01-01
        • 2021-03-29
        • 2022-12-22
        相关资源
        最近更新 更多