2016-05-03 20 views
2

こんにちは私の大学プロジェクトにcodeigniterフレームワークを使用していますが、js関数からコントローラメソッドを呼び出す必要がありますが、これを行うことができます。私が呼んでいるその方法。私はウェブでいくつかの例を見つけましたが、私は自分の問題を解決できませんでした。javascriptからcodeigniterメソッドを呼び出し、データを渡します

これは私が

window.location.href = "<?php echo site_url('controller_user/test');?>"; 

、jsの関数からの私のメソッドを呼び出すと、私はその方法に

var data = [formName, formSurname, formEmail, formUsername]; 

を、このデータを送信する必要があると私はこのような何かしようとする方法である:

window.location.href = "<?php echo site_url('controller_user/test');?>?data="+data; 

私はこの問題を解決するために何をすべきかわかりません、私はstackoverflowサイトで同様のものを見つけたと言いましたがまだ問題があります。

私を助けてくれる皆様、ありがとうございます!

+0

のようなあなたのコントローラの機能を変更するいずれかの隠されたフィールド&内のデータとHTMLフォームを作成してください試してみますJavaScriptを使用して送信するか、ここでAJAXを使用してください。 –

答えて

0

window.location.href = "<?php echo site_url('controller_user/test');?>/"+formName+/+formSurname+'/'+formEmail+'/'+formUsername; 

のようなあなたのJavaScriptを変更し、次の

public function test($formName='',$formSurname='',$formEmail='',formUsername=''){ 

    echo "$formName ,$formSurname,$formEmail,formUsername"; 
    exit; 

} 
+0

私はたぶんどこかで間違いを犯しました。何もしないので、私はもう一度やり直して、成功すると言います。答えてくれてありがとう!!! – useruser

+0

答えをありがとう、私は間違いを犯して修正して、あなたのコードはうまくいきます! – useruser

0

あなたは、AJAXを使用してメソッドにデータを渡す必要があります。この

window.location.href = "<?php echo json_encode(site_url('controller_user/test'));?> 
0

を試してみてください。このように、

var data = {formName : formName , formSurname : formSurname ,formEmail : formEmail,formUsername : formUsername} 

    $.ajax({ 
      url: '<?php echo base_url('controller_user/test');?>', 
      type: 'POST', 
      data: data, 
      success: function(msg) 
      { 
       //success part code 
      } 
     }); 
     return false; 
+0

私はおそらくどこかで間違いを犯しました。何もしないので、私はもう一度やり直します。私は成功すると言います。答えてくれてありがとう!!! – useruser

関連する問題