0

次のhtmlコードがあります:

    <form method="post" name="b" >
<table>
    <tr>
        <td>Field A</td>
        <td><input type='text' name='field[0][a]' id='field[0][a]'></td>
        <td>Field B</td>
        <td><textarea name='field[0][b]' id='field[0][b]'></textarea></td>
        <td><button>remove</button></td>
    </tr>
</table>
</div>
<div id="container"></div>
<button id="mybutton">add form</button>

<div align="center">
<p><button onClick="dadosFormularios()" value="Registar" name="registar">Registo</button></p>
</div>
</form>

ご覧のとおり、クリックすると関数「dadosFormularios()」を呼び出すボタンがあります。

  function dadosFormularios(){

            var dadosFormulario={};
            var iterador=countForms;
            var i=0;

            while(i<iterador){

            dadosFormulario[i]={};
            dadosFormulario[i]['a']=$('#field\\['+i +'\\]\\[a\\]').val();
            dadosFormulario[i]['b']=$('#field\\['+i +'\\]\\[b\\]').val();   
            alert(dadosFormulario[i]['a']);
            alert(dadosFormulario[i]['b']); 
                i++;
            }

//i want to redirect here


    }

今私が探しているのは、上記の関数の最後で、私をphpページ(私が作成したもの)にリダイレクトするものを使用し、そこに含まれるデータを処理する配列を受け取ることです。「window.location = "http://www.google.com";」のようなものを検索して見つけました。および他の同様のものですが、ここでは何も機能していません。したがって、ボタンをクリックせずにページをリダイレクトできない場合、リダイレクトで変数を渡すことさえ考えられません。

少し助けてください。ありがとうございました!

4

3 に答える 3

1

リダイレクトするのに jQuery は必要ありません。javascript だけです。

window.location.href="page.html";
于 2012-07-12T21:32:36.017 に答える
0

私はあなたがこのようなことをしたいかもしれないと思っています:

var qstring = '';
var tmp_qstring = [];
for ( var i = 0; i < dadosFormulario.length; i++ )
{
       tmp_qstring[i] = 'a' + i + '=' + dadosFormulario[i]['a'] + '&' + 'b' + i + '=' + dadosFormulario[i]['b'];

}

qstring = tmp_qstring.join('&');

window.location = 'page.php?' + qstring;

基本的に、これはすべてのデータをクエリ文字列に入れ、それを URL の末尾に追加します。これにより、$_GET を使用して PHP スクリプトからアクセスできます。それは次のようなものになります

page.php?a1=val&b1=val&a2=val&b2=val...

これがあなたの言いたいことだと思います....

于 2012-07-12T21:38:04.147 に答える
0

document.location = your-url-here;代わりに試してください。

于 2012-07-12T21:32:27.927 に答える