Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用dispachEvent预先填充表单feld不会';在IE中不工作,在rest所有浏览器中工作正常_Javascript_Jquery_Reactjs - Fatal编程技术网

Javascript 使用dispachEvent预先填充表单feld不会';在IE中不工作,在rest所有浏览器中工作正常

Javascript 使用dispachEvent预先填充表单feld不会';在IE中不工作,在rest所有浏览器中工作正常,javascript,jquery,reactjs,Javascript,Jquery,Reactjs,我的应用程序是使用React创建的。通过使用dispatchEvent,我试图使用JS预先填充表单字段值。它在所有浏览器中都能正常工作,但在IE11中却不能 IE控制台显示对象不支持错误 我用来预先填充表单字段的代码 $(document.body).on('change', '#retailer', function() { var retail_val = $(this).val(); //Storing the retailer value in the

我的应用程序是使用React创建的。通过使用dispatchEvent,我试图使用JS预先填充表单字段值。它在所有浏览器中都能正常工作,但在IE11中却不能

IE控制台显示对象不支持错误

我用来预先填充表单字段的代码

$(document.body).on('change', '#retailer', function() {

        var retail_val = $(this).val();

        //Storing the retailer value in the respective hidden text field.
        if (retail_val != "0") {
            var el = document.getElementById("text_6551650686371-InputField");
            el.value = retail_val;
        //calling the function
            doEvent(el, 'input');

        }
        if (retail_val == "0") {
            var el = document.getElementById("text_6551650686371-InputField");
            el.value = "";
          //calling the function
            doEvent(el, 'input');

        }
});
function doEvent(obj, event) {
         event = new Event(event, {
            target: obj,
            bubbles: true
        });

        return obj ? obj.dispatchEvent(event) : false;
    }

注意:我尝试使用.val()方法,因为我的应用程序是使用react创建的,所以它不起作用。请帮助我在IE中预先填写表单字段值。此外,当我更改选项卡时,字段中的值将关闭。

我不确定为什么需要触发事件,但我认为这应该可以做到:

$("#text_6551650686371-InputField").val(retail_val).trigger("input");

根据,如果您将事件名称更改为“textinput”(在检查浏览器后执行此操作)

为什么不使用
jQuery.event
.trigger()
?我需要如何准确放置以及在何处触发?请给我推荐一个代码片段。我用过上面的代码,但是它在前端更新了,输入的实际值属性没有更新。我认为这个应用程序是在react中完成的,这可能是一个冲突??我发布的上述代码在除IE之外的所有浏览器中都运行良好。