我目前正在开发一个使用php jquery和bootstrap的程序,我想使用复选框删除多个数据。我搜索并发现必须使用AJAX将参数从视图传递到控制器。 Jquery工作查找并可以从复选框中获取值。但是当我使用Ajax时,按钮无效。没有什么变化。请帮我在代码中找到问题。谢谢
我的控制器
public function hapusbeberapa()
{
$this->model_security->getsecurity();
$this->load->model('model_barang');
$arr = $this->input->post('data');
//$arrcode= json_encode($arr);
foreach($arr as $id)
{
$query = $this->model_barang->getID($id);
if($query->num_rows()>0)
{
$this->model_barang->getdelete($id);
//$this->session->set_flashdata('info',"Data Berhasil Dihapus");
}
}
}
我的模特
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Model_barang extends CI_model {
public function getdelete($key)
{
$this->db->where('IDBarang',$key);
$this->db->delete('tBarang');
}
public function getID($key)
{
$this->db->where('IDBarang',$key);
$query = $this->db->get('tbarang');
return $query;
}
}
我的观点
<script src="<?php echo base_url();?>http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script type="text/javascript" src="<?php echo base_url();?>http://code.jquery.com/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#btnhapus").click(function(){
var favorite = [];
$.each($("input[name='checkboxlist']:checked"), function(){
favorite.push($(this).val());
});
$.post("<?php echo site_url(barang/hapusbeberapa) ?>"+actMult, {data:favorite}););
});
});
</script>
</script>
答案 0 :(得分:0)
尝试类似的东西:
var favorite = [];
$.each($("input[name='checkboxlist']:checked"), function(){
favorite.push($(this).val());
});
favorite = favorite.join();
$.post
...
在控制器
中$arr = $this->input->post('data');
$arr = explode(',', $arr);
答案 1 :(得分:0)
将您的脚本用作:
<script type="text/javascript">
$(document).ready(function() {
$("#btnhapus").click(function(){
var favorite = [];
$.each($("input[name=checkboxlist]:checked"), function(){
favorite.push($(this).val());
});
$.post("<?php echo site_url(/barang/hapusbeberapa) ?>", {data:favorite}, function(returnData){
console.log(returnData);
});
});
});
</script>
它肯定会起作用,
结果与控制器功能中的echo
相同,并检查console log
检查结果,您也可以使用alert(returnData)
代替console.log(returnData)
进行检查
希望有所帮助