私はWEBのプロブラミングについてあまり知りませんので、詳細が足りない場合はお気軽にお尋ねください。
頻繁にアクセスする特定のWebサイトがあり、ユーザーがアクセスするたびにログインする必要があります。このWebサイトのログインページでは、自動的にログインするユーザースクリプトを書き留めようとしています。
フォームフィールドに何とか記入しましたが、JavaScriptで送信ボタンをクリックする方法がわかりません。以下は、元のログインコードの要約バージョンです。このコードでこの送信ボタンを自動的にクリックするにはどうすればよいですか?
<div id="start">
<div id="header">
<div id="login">
<form id="loginForm" name="loginForm" method="post" action="#">
// ...
<input type="submit" id="loginSubmit" onclick="changeAction('submitInput','loginForm');document.forms['loginForm'].submit();" value="Log in" />
// ...
</form>
</div>
</div>
</div>
document.getElementById('loginSubmit').submit();
または、onclick
ハンドラーと同じコードを使用します。
changeAction('submitInput','loginForm');
document.forms['loginForm'].submit();
(ただし、onclick
ハンドラーは一種のばかげて記述されています:document.forms['loginForm']
はthis
に置き換えることができます。)
一般にフォームを送信する通常の方法は、krtekの回答で説明されているように、フォーム自体でsubmit()を呼び出すことです。
ただし、何らかの理由で送信ボタンを実際にクリックする必要がある場合(コードは送信ボタンの投稿された名前/値などによって異なります)、次のように送信ボタン自体をクリックできます。
document.getElementById('loginSubmit').click();
できるよ :
document.forms["loginForm"].submit()
ただし、これはボタンのonclick
アクションを呼び出さないため、手動で呼び出す必要があります。
フォームにアクセスするには、name
ではなく、フォームのid
を使用する必要があることに注意してください。