2011-01-20 20 views
0

私はフォームを持っています。javascript変数の値をPHP変数に代入する方法

<form action="inc/genxml.php" method="post"> 
     <input id="nameTxt" name="name" type="text" value="test"/> 
     <button id="nameSave" class="left">Save</button> 
</form> 

そして、div要素の#NAME

私は、保存ボタンをクリックすると、私は、フォームアクションファイルへのdiv #NAMEの位置を通過したいです。 位置を取得するには、jQuery .position()を使用しています。

次のようなものです。 (これだけ座標をプリントアウト)

$('#nameSave').click(
    function() { 
     var pos = $('#name').position(); 
     alert("left: " + pos.left + ", top: " + pos.top); 
    } 
); 

Iは、(ファイルgenxml.phpこの場合の)フォーム・アクション・ファイルに座標値(pos.left & post.top)を渡したいです。

どうすればよいですか?

答えて

7

にその値を変更するには、隠し入力フィールドを使用することと、この入力フィールドの値や、あなたの中にこれらの入力フィールドを設定するためのjQueryを使用する最も簡単な方法はjQueryのを使用します場合。

HTML:

<form action="inc/genxml.php" method="post"> 
    <input id="nameTxt" name="name" type="text" value="test"/> 
    <input id="posLeft" name="posLeft" type="hidden" /> 
    <input id="posRight" name="posRight" type="hidden" /> 
    <button id="nameSave" class="left">Save</button> 
</form> 

JS:

$('#nameSave').click(
    function() { 
     var pos = $('#name').position(); 
     $('#posLeft').val(pos.left); 
     $('#posRight').val(pos.right); 
    } 
); 
2

フォームに2つの隠し入力を追加し、

+0

なぜ-1ですか?私はコード例を書いていないのでそれはありますか? – kaklon

1

この試してみてください。そして、

var pos = $('#name').position(); 
$("form").append('<input type="hidden" name="name_position" value="' + pos.left + ',' + pos.top + '" />'); 

は、サーバー側のコードでPOSTデータからname_position値を読み取ります。

関連する問題