我有一个弹出菜单,里面有一个表格和一个文本框。我想检索该值并将其提交给我的控制器。提交后,我希望我的弹出窗口关闭并返回到其他页面。我试过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中我取得了成功,并希望提醒我的数据(值),以确保它甚至可以工作,但它什么都不做。当我点击提交时,我的弹出视图就消失了。
答案 0 :(得分:0)
尝试将dataType:“json”添加到您的Ajax
dataType: "json",
然后在您的控制器中使用json_encode返回您的数据
$arr = array('amount' => $amount);
return json_encode($arr);
成功测试回复
console.log(data.amount);
答案 1 :(得分:0)
试试..
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));
}