2012-03-02 6 views
0

QANTMの大学生として、私は定期的にポータルシステムを使用して、自分の調査に関連する情報をチェックします。ただし、このサイトでは、モバイルブラウザなどの小規模な解像度では表示できない特定のシステムを使用しています。JavaScriptを使用して特定のフォームボタンを送信する

私は自分の書式設定されたビューでサイトの内容を見ることができるはずの小さなパーソナルアプリケーションを開発しています。しかし、資格情報を送信するためにJavaScriptを実行する際に問題が発生しています。

<form id="userslogin" method="post" action="javascript: saePortal.users.submitLogin();"  onsubmit="return false" class="x-hidden"> 
<input type="text" id="username" name="username" /> 
<input type="password" id="password" name="password" /> 
<button type="submit" id="submit" value="Login" class="x-hidden" /></button> 
</form> 

これは基本的にポータルの形の構造であると私は正常に私は結果を提出することができませんしかし

document.forms[0].username.value = 'text'; 

を使用して、私の希望内容でユーザー名とパスワードフィールドを変更することができますよ。私はオンラインで検索していますが、フォームを提出するのは簡単なことではありません。ページを更新します。

document.forms[0].submit(); 

Iも)[0] .submit.click(例えばdocument.formsなどの非標準準拠のコードを試みました。これには多くのバリエーションがあり、運がないgetElementByIdも使用されています。

問題のサイトhttps://portal.qantm.com.au/。私は、これがサイトに組み込まれている保護の形式であるかどうか、または単に誤った構文を使用しているのかどうかはわかりません。

+0

私はそれがはるかに複雑であることを恐れています。 AJAXが使用されているので、必要なURLに手動でPOSTリクエストを送信する必要があります。 – Blender

+0

なぜフォームタグに属性 "onsubmit = 'return false'"を設定していますか?そのユーザーがデータを投稿するのを妨げる。代わりに "onsubmit = 'return true'を与える​​必要があります –

答えて

0

ブラウザがサポートしている場合は、JavaScriptのFormData-classを使用できます。

var fd = new FormData(); 
fd.append("username", username); 
fd.append("password", password); 

次に、jQueryなどを使用して投稿できます。

$.ajax({ 
    url: portalurl, 
    type: 'POST', 
    data: fd, 
    contentType: false, 
    processData: false, 
    success: function(data){ 
     console.log(data); 
    } 
}); 
0

フォームタグに属性onsubmit="return true"を変更します。

関連する問題