今天在写layer的弹出层的时候,想把父页面的值传递到弹出层并显示,在success回调中已经取到了元素,并将其value设置了
$(layero.find('.ruleValue')[0]).val(that.materialForm.materialNameRule);
弹出层也成功显示,但是保存时发现值是空值。打印了下v-model的值后发现是空的。遂百度,,
v-model只是一种语法糖,底层的方法还是去监听input事件。所以可以使用dispatchEvent事件给元素分配一个input事件
el.dispatchEvent(new Event('input'));
解决!
PS:
如果v-model有lazy修饰符的时候,触发得是change事件
el.dispatchEvent(new Event('change'));
转载自:https://www.jianshu.com/p/ca8987598993
https://segmentfault.com/q/1010000010673730
侵删