gpt4 book ai didi

Jquery 将值传递给 Controller ​​(codeigniter)

转载 作者:行者123 更新时间:2023-11-29 19:32:06 26 4
gpt4 key购买 nike

我有一个无法解决的问题。我的目标是向所有成员展示在列表中选择的组。我已经走了这么远,我能看到控制台中选定的组,但我不知道如何将其传递到 Controller 。希望有人理解我的问题。我的代码如下。

Members_view.php

<select id="group_id">

<?php foreach($groups->result() as $row){?>

<option value="<?php echo $row->group; ?>" ><?php echo $row->group; ?></option>
<?php } ?>
</select>

<ul>
<?php foreach($members->result() as $row){?>
<li><?php echo $row->firstname." ".$row->lastname; ?></li>
<?php } ?>
</ul>

Jquery.js

$('#group_id').change(function(e) {
e.preventDefault();
var base = '<?=base_url()?>';
var grp = $(this).val();
$.ajax({
type: "POST",
url: base + "members/members",
data: { "group_id": grp },
dataType: "html",
cache: false,
success: function() {
console.log(grp);
}
});
});

成员.php

 function members(){
$group_id = $this->input->post('group_id',true);

$data['groups'] = $this->mdl_members->_all_groups();
$data['members'] = $this->mdl_members->_members($group_id);
$this->load->view('members_view',$data);
}

Mdl_members.php

function _all_groups(){
$sql = $this->db->query("select * from groups");
return $sql;
}

function _members($id){
$sql = $this->db->query("select * from members WHERE group_id = '$id'");
return $sql;
}

致以诚挚的问候。

最佳答案

Mdl_members.php:模型返回数据,我更喜欢 arrays .

function _all_groups(){
$sql = $this->db->query("select * from groups");
return $sql->result_array();
}

function _members($id){
$sql = $this->db->query("select * from members WHERE group_id = '$id'");
return $sql->result_array();
}

Members.php:看看新的 members_view()方法。他正在调用view_all_groups()数据发送至select .

function members_view(){
$data['groups'] = $this->_all_groups();
$this->load->view('members_view',$data);
}

function members(){
$group_id = $this->input->post('group_id',true);
$members = $this->_members($group_id);
echo json_encode($members);
}

Jquery.js:只是 success: function(resp) 中的一些行获取json来自 members() 的回复并将其放入 <ul id="resp"> .

<script>
$(function () {
$('#group_id').change(function(e) {
e.preventDefault();
var base = '<?=base_url()?>';
var grp = $(this).val();
$.ajax({
type: "POST",
url: base+"members/members",
data: {"group_id": grp},
dataType: "JSON",
cache: false,
success: function(resp) {
var li = "";
$.each(resp, function (i, v) {
li+="<li>"+v+"</li>";
});
console.log(li);
$('#resp').html(li);
}
});
});
});
</script>

Members_view.php:<ul id="resp">创建用于显示响应数据。

<select id="group_id">
<?php foreach($groups as $row){?>
<option value="<?=$row['group'];?>">
<?=$row['group'];?>
</option>
<?php } ?>
</select>
<ul id="resp">Will be shown here!</ul>

关于Jquery 将值传递给 Controller ​​(codeigniter),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41729612/

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