gpt4 book ai didi

Controller 数组中的 Javascript 不起作用

转载 作者:行者123 更新时间:2023-11-30 11:31:55 25 4
gpt4 key购买 nike

我想在 Controller 内部创建带有 Action 表单的切换按钮,javascript 无法工作,没有请求...

我的 Controller 在 Controller ajax 服务器端数据表中包含 jquery...

ajax_list.php

public function ajax_list()
{
$list = $this->model_masterdata_menu->get_datatables();
$data = array();
$no = $_POST['start'];
foreach ($list as $i => $menu) {
$no++;
$row = array();
$row[] = $menu->menu_id;
$row[] = $menu->menu_nama;
$row[] = $menu->menu_url;
if($menu->statusmenu_nama == 'visible')
{
$row[] = '<form id="form_['.$i.']" method="post" action="'.site_url().'/menu/visible/'.$menu->menu_id.'">
<label class="switch">
<input type="hidden" value="0" name="cbcheck">
<input type="checkbox" name="visible['.$i.']" id="cb_['.$i.']" class="cb_['.$i.']" checked>
<span class="slider round"></span>
</label>
</form">
<script language=\"text/javascript\">
$(function(){
$("#cb_['.$i.']").on("change",function(){
$("#form_['.$i.']").submit();
});
});

</script>
';
}else{
$row[] = '<form id="form2_['.$i.']" method="post" action="'.site_url().'/menu/unvisible/'.$menu->menu_id.'">
<label class="switch">
<input type="hidden" value="1" name="cbcheck">
<input type="checkbox" name="visible['.$i.']" id="cb2_['.$i.']" class="cb2_['.$i.']" value="1" >
<span class="slider round"></span>
</label>
</form>

<script language=\"text/javascript\">
$(function(){
$("#cb2_['.$i.']").on("change",function(){
$("#form2_['.$i.']").submit();
});
});
</script>
';
}

$row[] = '<a class="btn btn-sm btn-primary" href="javascript:void(0)" title="Edit" onclick="edit('."'".$menu->menu_id."'".')"><i class="glyphicon glyphicon-pencil"></i> Edit</a>
<a class="btn btn-sm btn-danger" href="javascript:void(0)" title="Hapus" onclick="hapus('."'".$menu->menu_id."'".')"><i class="glyphicon glyphicon-trash"></i> Delete</a>';

$data[] = $row;
}

$output = array(
"draw" => $_POST['draw'],
"recordsTotal" => $this->model_masterdata_menu->count_all(),
"recordsFiltered" => $this->model_masterdata_menu->count_filtered(),
"data" => $data,
);
//output to json format
echo json_encode($output);

when I switch, no request

当我切换按钮时,没有请求。谁能帮我?非常感谢

最佳答案

你不能像那样通过 Ajax 加载 JS。

你应该给所有你想为同一个类添加事件的元素:

<input type="checkbox" name="visible['.$i.']" id="cb_['.$i.']" class="some-class" checked>

然后您应该在主页上的该类上添加事件绑定(bind),如下所示:

$(function() {
// Registering an event this way, the event will also be added to all elements
// appended to the DOM at a later point, like through ajax.
$('body').on('change', '.some-class', function () {
// Submit the closest form
$(this).closest('form').submit();
});
});

关于 Controller 数组中的 Javascript 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45931226/

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