表单弹出窗口在Internet Explorer中被阻止

时间:2012-11-01 19:42:08

标签: javascript jquery html forms internet-explorer

这个表单假设转到下一个并打开另一个弹出窗口。我也将表单数据传递给两个页面。

我遇到的问题是弹出窗口显示在IE以外的所有浏览器中。它一直被IE中的弹出窗口阻止程序阻止。我需要弹出窗口才能显示而不会被阻止。

<script language="javascript">

    function myChangeHandler() {

        var form = document.getElementById('TheForm');
        form.method = 'POST';
        form.action = 'https://test.com/page1';
        form.target = 'window_1';

        window.open('', 'window_1','fullscreen=1,scrollbars=1');
        this.form.submit();

        var state_ac = document.getElementById('stateDrop');
        var state_dd = state_ac.options[state_ac.selectedIndex].value;
        window.location = 'https://test.com/page2';
    }

</script>


<form id="TheForm" action="https://test.com/page2" method="post">

    <select id="stateDrop" name="state" size="1" onchange="myChangeHandler.apply(this)">
        <option value="null" selected="selected" style="color:#b3b3b3">- Select Your State -</option>
        <option value="AL" class="others">Alabama</option>
        <option value="AK" class="others">Alaska</option>
        <option value="AZ" class="others">Arizona</option>
    </select>

    <input id="featured-image-right-button" type="image" src="<?php bloginfo('template_url'); ?>/images/featured-image-right-button.png" alt="" disabled="disabled" />

</form>
编辑:看到这里的示例,当选择该选项但弹出窗口被阻止时,弹出窗口在其他所有浏览器中都有效。单击按钮时,它在IE中工作正常但选择该选项时弹出窗口被阻止http://jsfiddle.net/uyeq3/

1 个答案:

答案 0 :(得分:0)

修改 Internet Explorer阻止来自弹出窗口的更改事件,您可以在用户单击按钮时执行操作,并允许弹出窗口阻止程序。

<input type="button" value="Change Country" onclick="myChangeHandler();return false;"/>