如何用js实现:在打开的浏览器中自动提交表单?

因为想自动点击这个按钮,但是不想用鼠标模拟,这个表单能否用js实现代码模拟点击,最好在已打开的窗口中实现,能够后台自动点击。初学javascript 想解决这个问题。能解决问题有分,谢谢。
<form action="./targeturl.cgi" method="POST">
<input type="hidden" name="id" value="userid1">
<input type="hidden" name="pass" value="password1">
<input type="hidden" name="mode" value="1234">
<input type="submit" class="MFC" value="进入"></form>

页面onload的时候取到这个form然后submit不就行了么
例如:
<form id="myForm" method="post">
<!-- 表单中的各元素就忽略不写明了 -->
</form>

js代码:
window.onload = function(){
document.getElementById("myForm").submit();
}

用jQuery的话就是在ready函数中加类似的代码,道理是一样的追问

问题是这个form没有ID啊,如果用getelementBytag的话 我估计是第三个form. 请问这个JS代码能在googlechrome的console里面运行吗,本人是初学,求教

追答

没有id你可以加上id啊,再说用其它方法例如getElementsByName等,总之你能取到就行了

追问

我是想做个外挂一样的,在打开的一页面里面,选择一个表单,提交,不是做网页。或者我自己写个HTML页面,嵌入一段代码,能跳转到那个页面提交表单就行

追答

没看明白你到底什么意思。什么叫“在一个页面里面”又“不是做网页”,难道你是想做一个什么应用程序,在你这个程序界面上可以显示并选择另外某个网页上的表单去提交?

追问

对,就是这个意思,比如百度首页登录表单,能用自己做个网页用iframe显示百度首页,然后提交iframe里的表单,也是发送给百度服务器。 但现在我要提交的这个表单有4个input,这个表单应该怎么做呢?谢谢了

追答

首先你要知道,很多网站的页面有检测,如果自己被嵌套在其它框架(frame)内的话,会立刻把自己设置为top窗口,所以对于这类页面,你没办法用iframe把它嵌进来。网站开发者也不呆,他们这样做的目的就要保持自己网页是顶层窗口,避免被其它非自己网站的页面嵌套引用。
其次,假设能嵌套的页面,因为js不允许跨域的安全策略,你自己这个页面也访问不了嵌入的不同域名下的另外一个页面。否则,我自己写一个页面,把新浪、搜狐、支付宝什么的页面嵌进来,然后不就可以通过我自己页面上的脚本来随便改这些网站页面上的内容了?

追问

哎 iframe确实是个问题,好吧,这不属于我此次问题范围了。不过就这个表单,我还是不太确定,这4个INPUT要分别提交还是只要查找到这个form然后submit就行了?如果这个name和password是textfield自己填写的怎么提交发?请教

追答

只要submit提交了form表单,form标签内的表单元素(包括文本框input type="text"、密码框input type="password"、文本域textarea、隐藏域input type="hidden"、单选框input type="radio"、复选框input type="checkbox"、选择栏select)都会被提交的

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-12-06
我知道追问

求教育