【问题标题】:How trigger event in input fields?如何在输入字段中触发事件?
【发布时间】:2018-07-17 11:31:47
【问题描述】:

我正在尝试使用 jquery 更新 Input Parameter- Name 中的值:

$("#camunda-parameterName").val('Single2');

它正在改变价值,但并未反映在所有领域。

在更新使用键盘时的快乐场景中,值会反映在所有字段中。

快乐场景中的以下屏幕用户输入姓名:

但是在使用 jquery 时,输入字段已更新,但并非所有字段都反映了此更改:

我尝试以下命令但不工作:

$("#camunda-parameterName").val('Single2').change();
$("#camunda-parameterName").trigger('focus')
$("#camunda-parameterName").trigger('blur');
$("#camunda-parameterName").trigger('input');
$("#camunda-parameterName").change();

【问题讨论】:

  • 所以我认为 Input Pratemeter -> Name 中的输入字段的 ID 为“amunda-parameterName”?每个站点只能在一个字段上使用相同的 ID,因此如果您只是更改此 ID 的值,则其余部分不会更新是正常的..您也需要更新上面的字段

标签: jquery bpmn.io


【解决方案1】:

你可以这样做:

$("#yourfield").on("keyup", function() {
  var val = $(this).val();
  $(".yourfield2").text(val);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<p>You have to have an ID or a Class (if you want to populate on multiple spots) everywhere you want to change the text</p>
<input type="text" name="yourfield" id="yourfield"><br>
<p class="yourfield2">Your Text will be display here</p>
<p class="yourfield2">and here</p>

希望你明白我的意思并能在你的项目中使用它!

【讨论】:

    【解决方案2】:
    evt = new MouseEvent(('change'), {
        view: window,
        bubbles: true,
        cancelable: true
      });
    
    document.getElementByID('camunda-parameterName"').dispatchEvent(evt);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-10
      相关资源
      最近更新 更多