如何用javascript在表单中提交数据

问题描述 投票:0回答:1

我花了几个小时寻找,但我找不到解决方案。我想用JS自动完成一项人类的工作,我在一个试验性的网站上进行了一些测试,它可以正常工作。但是在一个特定的网站上,我在登录页面遇到了以下问题。

我在浏览器控制台做了这个测试.

var username = window.document.getElementById("username")
undefined
var password = window.document.getElementById("password")
undefined
var signin = window.document.querySelector(".splButton-primary.btn")
undefined
username.value = "usuariovalue"
"usuariovalue"
password.value = "passwordvalue"
"password value"
signin.click()

但是,我收到这样的msg:>common.js:27 POST https:/siteexempleen-USaccountlogin。 401(未经授权)。如果我在网站上手动填写用户名和密码,然后用JS点击按钮,就可以了。

我看不出有什么不同。

按照网站的代码块。

  <form method="post" class="loginForm" action="/en-US/account/login">
        <div style="display: none" data-cid="view200" class="account-login-firsttime" data-view="views/account/login/FirstTime" data-render-time="0">
		<h2>First time signing in?</h2>
		<p>If you've forgotten your username or password, please contact your Splunk administrator.</p>
		<table>
    			<tbody><tr>
       			<td>username</td>
        		<td>admin</td>
    			</tr>
    			<tr>
 		        <td>password</td>
        		<td>changeme</td>
			</tr>
			</tbody>
		</table>
	</div>
	<fieldset>   
        	<div class="control account-login-textcontrol control-default" data-cid="view197" data-view="views/account/login/TextControl" data-name="username" data-render-time="0">
	        	<span class="uneditable-input " data-role="uneditable-input" style="display:none"></span>	        
			<input type="text" name="username" class="  " value="" autocomplete="off" id="username" placeholder="Username">	            	            	        	</div>
		<div class="control account-login-textcontrol control-default" data-cid="view199" data-view="views/account/login/TextControl" data-name="password" data-render-time="0">	        
		<span class="uneditable-input " data-role="uneditable-input" style="display:none"></span>	        
		<input type="password" name="password" class="  " value="" autocomplete="off" id="password" placeholder="Password">	            	            	        	</div><input class="splButton-primary btn" type="submit" value="Sign in">
           	<input type="hidden" name="cval" value="1900007162">
            	<input type="hidden" name="return_to" value="/en-US/">
        </fieldset>
   </form>

你能不能,帮帮我?我是用JS入门的。

javascript dom
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.