gpt4 book ai didi

javascript - 如何通过ajax将多个变量传递给codeigniter Controller ?一个变量是通过序列化

转载 作者:行者123 更新时间:2023-11-29 22:10:30 24 4
gpt4 key购买 nike

我创建了一个编辑表单,其中的值将通过 ajax 发送到我的 codeigniter Controller 中。表单中要更新的值是使用序列化函数 var curr_val = $("#edit_currency").serialize(); 传递的,但要更新的值的 id 不包含在序列化方法,并通过 var curr_id = $("#curr_id").val(); 传递给我的 javascript 函数问题是我无法在 ajax 中成功传递这 2 个变量以在我的 Controller 函数中接收。没有更新发生。我怎样才能完成这个?多谢。这是我的代码

查看:

<?php
//echo form_open('/display/student_update');
foreach($curr_values as $row){


echo"<input type='hidden' name='curr_id' id='curr_id' value=".$row->id.">";
?>
<form method="post" action="" id="edit_currency">
<div class="row">
<div class="span4"><strong><?php echo $lbl_currency_name;?></strong> </div>
</div>
<div class="row">
<div class="span4"><strong><?php echo"<input type='text' name='currency[pretty_name]' id='pretty_name' value=".$row->pretty_name.">"; ?></strong> </div>
</div>
<div class="row">
<div class="span4"><strong><?php echo $lbl_currency_code; ?></strong> </div>
</div>
<div class="row">
<div class="span4"><strong><?php echo form_input($currency_code,$row->currency_code);?></strong> </div>
</div>

?>

<script type="text/javascript">
$(function(){

$("#currency_save").click(function(){
var curr_id = $("#curr_id").val();
var curr_val = $("#edit_currency").serialize();

alert(curr_id);
alert(curr_val);

$.ajax({
type: "POST",
url: "<?php echo base_url();?>currencies/update_currencies",
dataType:'json',
data: {'curr_values':curr_val,'curr_id':curr_id},
success: function(data)
{
if(data.notify=="Success"){
console.log(data.notify);
}
else{
console.log(data.notify);
}


}
});

$("html, body").animate({ scrollTop: 0 }, 600);
return false;
});
});
</script>

Controller :

function update_currencies(){

$curr_val=$this->input->post('curr_values');
$curr_id = $this->input->post('curr_id');

$query = $this->course_booking_model->update_currencies($curr_id,$curr_val);

if($query){
$notification = "Success";
}
else{
$notification = "Failed";
}

echo json_encode(array('notify'=>$notification));
}

最佳答案

 $.ajax({
type: "POST",
url: "<?php echo base_url();?>currencies/update_currencies",
data: curr_values + '&curr_id=' + curr_id,
success: function(data)
{
if(data.notify=="Success"){
console.log(data.notify);
}
else{
console.log(data.notify);
}


}
});

您将 curr 值转换为查询字符串,因此您只需要将 curr id 也连接为查询字符串。

关于javascript - 如何通过ajax将多个变量传递给codeigniter Controller ?一个变量是通过序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18304582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com