IE和火狐中模仿Click事件及提交到新窗口总结(asp.net)


先看一下模拟click事件的代码:
复制代码 代码如下:

<a href=http://www.phpstudy.net target="_blank" id="aa">ok</a>
<script>
var comment = document.getElementById('aa');
if (document.all) {
comment.click();
} else { //火狐,如果<a>中没有定义onclick事件,则本段对火狐不起作用
var ev = document.createEvent("MouseEvents");
ev.initEvent("click", true, true);
document.getElementById("aa").dispatchEvent(ev);
}

</script>

事实上,我在页面中去触发一个click事件主要是为了在提交表单时,以新窗口的形式打开,我们其它往往忽视一些基础知识,<form>其实已经提供了这个功能,

只是我们把它遗忘了。
复制代码 代码如下:

<form action="/shopping/index" method="post" id="processorder" target="_blank" onsubmit="return checkOrder()">
<input name="button2" type="submit" id="button2" value="" class="ck_lijisn" />
</form>

这样的代码可以完成在新窗口提交,但注意,按钮不能是button,如果你在程序中用document.getElementById("processorder").submit()是不能实现

在新窗口进行提交的。呵呵。

看来,有时东西还是传统的好。先看一下模拟click事件的代码:
复制代码 代码如下:
<a href=http://www.phpstudy.net target="_blank" id="aa">ok</a>
<script>
var comment = document.getElementById('aa');
if (document.all) {
comment.click();
} else { //火狐,如果<a>中没有定义onclick事件,则本段对火狐不起作用
var ev = document.createEvent("MouseEvents");
ev.initEvent("click", true, true);
document.getElementById("aa").dispatchEvent(ev);
}

</script>

事实上,我在页面中去触发一个click事件主要是为了在提交表单时,以新窗口的形式打开,我们其它往往忽视一些基础知识,<form>其实已经提供了这个功能,

只是我们把它遗忘了。
复制代码 代码如下:
<form action="/shopping/index" method="post" id="processorder" target="_blank" onsubmit="return checkOrder()">
<input name="button2" type="submit" id="button2" value="" class="ck_lijisn" />
</form>

这样的代码可以完成在新窗口提交,但注意,按钮不能是button,如果你在程序中用document.getElementById("processorder").submit()是不能实现

在新窗口进行提交的。呵呵。

看来,有时东西还是传统的好。
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3