簡體   English   中英

將表單數據發送到控制器(Codeigniter)

[英]Send Form Data to Controller (Codeigniter)

我有一個彈出菜單,里面有一個表格和一個文本框。 我想檢索該值並將其提交給我的控制器。 提交后,我希望我的彈出窗口關閉並返回到其他頁面。 我試過AJAX,但我可能做錯了。

<form onsubmit="return(testing());" method="POST">
      <input type="text" name="vip_text_box" id="vip" value="<?php echo $total_amount ?>"> <br>
      <input type="submit" name="Redeem"  value="Redeem">
</form>

現在我的Javascript

function testing() {
  $test = document.getElementById("vip").value;
  var url = base_url + '/index.php/home/redeeming_form_value';
    $.ajax({
      type : 'POST',
      url : url,
      data : {'myvalue':test},
      success: function(data){
        alert(data);
      }
    });
};

在我的控制器中

function redeeming_form_value() {

     $amount = $this->input->post('myvalue');

     return $amount;

在AJAQ中我取得了成功,並希望提醒我的數據(值),以確保它甚至可以工作,但它什么都不做。 當我點擊提交時,我的彈出視圖就消失了。

嘗試將dataType:“json”添加到Ajax中

dataType: "json",

然后在您的控制器中使用json_encode返回您的數據

$arr = array('amount' => $amount);
return json_encode($arr);

成功地測試響應

console.log(data.amount);

試試吧..

HTML

<form action="" method="POST">
      <input type="text" name="vip_text_box" id="vip" value="<?php echo $total_amount ?>"> <br>
      <input type="submit" name="Redeem" id="submit"  value="Redeem">
</form>

使用Javascript

<script type="text/javascript">
$(document).ready(function(){
$("#submit").click(function(){
  var test = $("#vip").val();
  var base_url= 'http://localhost/shop';
  var url = base_url + '/index.php/home/redeeming_form_value';
    $.ajax({
      type : 'POST',
      dataType: 'json',
      url : url,
      data :'myvalue='+test,
      success: function(data){
         msg= eval(data);
         amount= msg.amount;
         alert(amount);
         }
      });
    });
});
</script>

在您的控制器

function redeeming_form_value() 
{

     $amount = $this->input->post('myvalue');

     echo json_encode(array('amount'=>$amount));

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM