手动更改后Dojo Textarea触发器onChange

0yg35tkg  于 2022-12-08  发布在  Dojo
关注(0)|答案(2)|浏览(193)

现有的Dojo 1.10页面具有以下HTML文本区域(我无法更改源代码):

<textarea tabindex="40" data-qbo-bind="value: payeeMessage" class="customerMessage" data-dojo-attach-point="_gridTabTarget" maxlength="1000"></textarea>

我一直在尝试创建一个javascript来更改textarea的内容,以便在提交表单时保存值。我已经能够更改内容,但它从未被保存,因为不知何故,我需要在更改值后生成一个onChange触发器事件。
我的代码如下所示,但它不会触发事件:

dojo.query(".customerMessage").connect("onchange", function() { alert("Changed!"); });
var widget_node = dojo.query(".customerMessage")[0];
widget_node.innerHTML="123123";
widget_node.onchange();

如有任何帮助,不胜感激

ojsjcaue

ojsjcaue1#

获取您的小部件,并使用this.set('value', value)使用change事件传递的值更新小部件。
示例(请打开控制台):
https://jsfiddle.net/s5620bwd/3/
第一个
在代码中,应在onChange的callBack内添加this.set('value', value);

q35jwt9p

q35jwt9p2#

如果您遇到change事件无法按预期用于textarea元素的问题,则可能需要将data-dojo-props="intermediateChanges: true"添加到textarea

相关问题