CI 中 用jquery获取select数据传给php controller,但是调用失败
本帖最后由 Dandelion 于 2013-7-12 14:22 编辑最近刚接触CI,遇到了一个问题,用户通过select选择图片上传到的哪个文件夹,就是form在提交时候,通过用jquery来获取用户的select value值,然后用ajax将value值来post到php,但是php中的函数老是调用失败,什么原因呢。
$('#submit').click(function(){
var name = $('#userfile').val();
if(!name){
alert('Please choose one file.');
return false;
}
var form_data = {
tableid: $('#tables_select').val()
};
alert($('#tables_select').val());
$.ajax({
url: "<?php echo site_url('gallery/uploadimage'); ?>",
type: 'POST',
data: form_data,
success: function(msg){
alert(msg);
}
});
return false;
});
});
其中的gallery这个controller里面有uploadimage函数用来实现照片的上传。但是这个函数没有调用啊。。。
firebug监视AJAX提交动作,看看有没有提交,提交返回内容是什么 kinwyb 发表于 2013-7-11 07:44 static/image/common/back.gif
firebug监视AJAX提交动作,看看有没有提交,提交返回内容是什么
404 page not found
说明你提交的地址有问题,
firebug里看看提交的地址,是不是正确。
PS:你的JS是直接写在模版里还是JS文件里。。要是JS文件里site_url函数是没用的 kinwyb 发表于 2013-7-12 08:59 static/image/common/back.gif
说明你提交的地址有问题,
firebug里看看提交的地址,是不是正确。
PS:你的JS是直接写在模版里还是JS文件 ...
我的js是写在一个单独的global.js文件里面的,然后我按照您说的把ajax改成了
$.ajax({
url: "http://localhost:8081/xieyi/gallery/uploadimage",
type: 'POST',
data: form_data,
success: function(msg){
alert(msg);
}
});
然后就显示提交成功了,但是后面要上传照片么,后面的uploadimage会调用ci中的do_upload,然后返回就变成了你未选择图片,我是不是要在ajax里面把图片也作为data中的一部分上传啊。
kinwyb 发表于 2013-7-12 08:59 static/image/common/back.gif
说明你提交的地址有问题,
firebug里看看提交的地址,是不是正确。
PS:你的JS是直接写在模版里还是JS文件 ...
还有个问题想问下,就是说我用ajax来提交就相当于屏蔽了form的隐藏submit,改而用js中的ajax提交的url来处理是吧
Dandelion 发表于 2013-7-12 11:16 static/image/common/back.gif
还有个问题想问下,就是说我用ajax来提交就相当于屏蔽了form的隐藏submit,改而用js中的ajax提交的url来 ...
按照你的JS中的写法是的,你在JS中用了return false;这样原本的form提交就会被放弃
Dandelion 发表于 2013-7-12 11:10 static/image/common/back.gif
我的js是写在一个单独的global.js文件里面的,然后我按照您说的把ajax改成了
$.ajax({
url: "http:// ...
是的,你必须还要把图片也提交上去,不然怎么会知道处理什么图片呢。
PS:AJAX上传图片建议使用现成的插件。自己写比较麻烦
kinwyb 发表于 2013-7-12 13:30 static/image/common/back.gif
是的,你必须还要把图片也提交上去,不然怎么会知道处理什么图片呢。
PS:AJAX上传图片建议使用现成的插 ...
太感谢了,我用了ajaxFileUpload插件,实现了这个功能,第一次在php中调用jquery神马,感谢您~
{:soso_e181:}都是新手·``多多交流
页:
[1]