小凡 发表于 2010-10-31 17:44:49

CI框架中怎么实用ajax???

本帖最后由 小凡 于 2010-11-28 22:43 编辑

先上传一张图片,这张图片是我的文件目录。
在文件目录hotelmanage/javascript/roomshow.js文件里面代码如下:
// JavaScript Document
function showroomsort(str){
        var xmlHttp=GetXmlHttpObject();       
        if(xmlHttp==null){       
                alert("您的浏览器不支持ajax");
                return;
                }
        var url="dealroomsort";//主要是此处的URL路径我不知道该怎么填写。       
         url=url+"?q="+str;
        url=url+"&x="+Math.random();
        xmlHttp.onreadystatechange=stateChanged;
        xmlHttp.open("GET",url,true);
        xmlHttp.send(null);       
        }       
function GetXmlHttpObject(){
      
                var xmlHttp=null;
                try{
                       xmlHttp=new XMLHttpRequest();
                        }catch(e){
                                  try{
                                           xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
                                          }catch(e){
                                                  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
                                                  }                               
                       }
                return xmlHttp;
}
function stateChanged(){
       
        //if(xmlHttp.readystate==4){
                document.getElementById("roomshow").innerHTML=xmlHttp.responseText;               
                //}       
        }
上面代码中的处理ajax传送数据的php文件在controllers/cguestorder.php/文件下的dealroomsort函数中,我想问上面的路径该怎么写呢??还有就是下面的这个if判断,总是提示错误xmlHttp is not defined(火狐的firebug提示的)
//if(xmlHttp.readystate==4){
                document.getElementById("roomshow").innerHTML=xmlHttp.responseText;               
                //}
小弟是个新手,做了很多测试仍不能找到解决办法,希望哪个大哥给小弟解决下,谢谢啦

jeongee 发表于 2010-10-31 20:59:03

坚决要用绝对地址

小凡 发表于 2010-10-31 21:44:22

本帖最后由 小凡 于 2010-10-31 21:49 编辑

回复 2# jeongee


    可是我用绝对地址的时候怎么提示错误啊,绝对地址要不要从哪里开始写,是这样子么:http://localhost/hotelmanage/index.php/cguestorder/dealroomsort    可是这样子写要是每次改变前面的localhost不是还要更改代码么??

jeongee 发表于 2010-10-31 22:54:03

xmlHttp is not defined 这个错误不管路径什么事

小凡 发表于 2010-11-1 09:08:02

回复 4# jeongee


    路径问题解决了可是为什么在火狐下会提示xmlHttp is not defined 这个错误呢是那里错误引起的这个错误呢??

sunxch100 发表于 2010-11-19 18:29:38

本帖最后由 sunxch100 于 2010-11-19 18:32 编辑

可以在根目录下新建一个public文件夹,里面存放js,css,images文件夹
将js文件放在js下,例如jquery.js
可以这样引用
<script src="<?php echo base_url();?>public/js/jquery.js";注意public前没有/
使用base_url()函数要引入url助手
在js代码中可以使用绝对地址,要是觉得每次写都麻烦,可以将域名写成全局的。域名可以这样获取
var host_name='';
var host=location.host;//域
var port=location.port;//端口号
host_name='http://'+host+':port';

以后写的话就可以这么写
var url=host_name+'/controller/method/args1/args2';

sonic 发表于 2010-11-20 09:35:27

这个简单呀。做个全局变量
<script>
var site_url="<?php echo site_url();?>";
</script>

wing1314 发表于 2010-11-21 01:31:23

我用jq然后post路径用控制器/方法/相对的

loadinger 发表于 2010-11-25 17:32:59

我就没明白,ci跟ajax有什么关系。你ajax还不是正常用吗。
加载js时base_url()。路径用site_url();

z134026781920 发表于 2010-11-27 16:11:34

我就没明白,ci跟ajax有什么关系。你ajax还不是正常用吗。
加载js时base_url()。路径用site_url(); ...
loadinger 发表于 2010-11-25 17:32 http://codeigniter.org.cn/forums/images/common/back.gif


    觉得也是 JS 到处可以用
页: [1] 2
查看完整版本: CI框架中怎么实用ajax???