2012-01-19 17 views
2

これで、3つの入力ボックスを持つフォームが現時点ではテキストですが、パスワードに変更されます。送信ボタンが押されると、forはフォームデータをAjaxスクリプトに送信します。複数のパラメータをHTMLフォームボタンからjavascriptに送信

私は、このボタンは次のようになります。ただ一つのパラメータで作業している:thatsのため、今私は、関数がかかるだろうどのように多くのパラメータ「this.formを」の部分を追加し3回試した

<input type="submit" name="submit" value="Submit" 
    onClick="return pass(this.form.oldPass.value;"> 

が、

<input type="submit" name="submit" value="Submit" 
    onClick="return pass(this.form.oldPass.value, 
         this.form.newPass.value, 
         this.form.newPassCheck);"> 

これは、フォームデータをスクリプトに渡す正しい方法ですか?その周りに別の方法があるのですか、私はここで何か間違っていますか?

もう一度コードが必要な場合は、私はそれを追加します助けていただきありがとうございます。

+2

を。代わりに、フォームのonsubmitと呼んでください。頭にあるスクリプトを使って追加することをお勧めします。フォームを提出する必要がない場合は、onsubmitイベントでfalseを返す必要があります – mplungjan

+1

jQueryでは、 '$。post(" test.php "、$("#testform ")を実行するだけです。 ()); ' – mplungjan

答えて

3

はこれを試してみてください。 (あなたはこれを行うにはjqueryを必要としています。)あなたの.jsファイル内

<form> 
old pass <input type="password" id="old_pass" /> 
new pass <input type="password" id="new_pass" /> 
new pass confirmation <input type="password" id="new_pass_confirm"/> 
</form> 

、この書き込み: `関数pass`を表示し、送信ボタンのonclickのコードを呼び出すしないでください

$(document).ready(function(){ 
    var old_pass = $('#old_pass').val(); 
    var new_pass = $('#new_pass').val(); 
    var new_pass_confirm = $('#new_pass_confirm').val(); 

    //then call your method with those vars as parameter 
    anyMethod(old_pass, new_pass, new_pass_confirm); 

}); 

//this is your function 
function anyMethod(old_pass, new_pass, new_pass_confirm) 
{ 
    //put your validation code or ajax call here... 
} 
1

フォームにonSubmitリスナーを追加する必要があります。 jsceryのような使いやすいjsフレームワークがあります。これにより、フォームを送信するときに関数を実行するリスナーを作成できます。この関数では、例えばjsonにデータを抽出してサーバーに送信することができます。

info about jquery

jquery ajax

how to extract form data

2

ご入力ボックスごとにIDを追加して、あなたは次のように、関数内で値を取得できます。

 

function pass() { 
var old = document.getElementById("yourOldPassId").value; 
var new = document.getElementById("yourNewPassId").value; 
var newConfirm = document.getElementById("yourNewConfirmPassId").value; 
} 
 

あなたが何かを意味しましたこのように

2

入力にいくつかのIDを与え、そこからデータを取得します。

ような何か:各入力の場合

<input type bla bla id="whateverId0" /> 

提出は、JSはのようになりますのonclick = "whateverFunction()"

のようなものを持っている必要があります。

 function whateverFunction() 
    { 
      val0 = document.getElementById('whateverId0'); 
      // For all 3 values. 

      // Do whatever you want with them. 
    } 
関連する問題