用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3481|回复: 2
收起左侧

[HELP] 新手在CI上用jquery ajax问题重重~求教

[复制链接]
发表于 2012-8-7 13:06:50 | 显示全部楼层 |阅读模式
新手上路,在CI上用jquery ajax问题重重~求教

views中
HTML复制代码
<script src="resource/js/jquery-1.3.1.js" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
  $(function(){
       $('#send').click(function() {
           $.ajax({
                         type: "OST",
                         url: "<?php echo site_url('index/ajax') ?>",
                         data:"username=" + $('#username').val(),
                         dataType: "text",
                         success: function callback(data){
                                  if(data=="hello"){
                                               alert(data);
                                               var txtHtml = "<div class='comment'><h6>"+data+":</h6><p class='para'>"+data+"</p></div>";
                                               $("#resText").html(txtHtml); // 把返回的数据添加到页面上
                                       }else{
                                               alert(data);
                                               var txtHtml = "<div class='comment'><h6>"+data+":</h6><p class='para'>"+data+"</p></div>";
                                               $("#resText").html(txtHtml); // 把返回的数据添加到页面上
                                       }
                               }
                       });
       });
  });
</script>
</head>
<body>
<form id="form1" action="#">
<p>姓名: <input type="text" name="username" id="username" /></p>
<p><input type="button" id="send" value="提交"/></p>
</form>
<div  class='comment'>已有姓名:</div>
<div id="resText" >
</div>
</body>
复制代码

controllers中
PHP复制代码
 
         function ajax(){
                $name = $this->input->post('username');
                echo $name;
         }
 
 
复制代码




为什么这样不对,得不到任何结果~
但是把controllers中改成
PHP复制代码
 
         function ajax(){
                echo "hello";//echo 其他的也可以
         }
 
 
复制代码

然后把views中的  data:"username=" + $('#username').val(), 这句去掉就可以~

反正只要data:"username=" + $('#username').val(), 貌似就有问题~

请问这个问题出在哪{:soso_e154:}

发表于 2012-8-7 17:24:28 | 显示全部楼层
用firebug查看下有没有JS错误,或者试试在$.ajax({});上面定义个变量获取到username的值,然后在data后面使用data:{username:username},这样提交下试试
发表于 2012-8-28 19:46:50 | 显示全部楼层
应该是没有获取到username的值造成的,可以去控制器里打印一下ajax提交过来的值,是否接受到了。。。

本版积分规则