ajax-请问下这段代码有什么问题,数据也已经返回了

问题描述

请问下这段代码有什么问题,数据也已经返回了
 <%@ page language="java"  pageEncoding="UTF-8"%>

<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-2.1.1.js"></script>

    <script type="text/javascript">
        function xiaoshou(){
            var suoshubumen=document.getElementById("find").value;
            console.info(suoshubumen);
            $.ajax({
                      url:"crmuserAction!findBySuoshubumen.action?suoshubumen="+suoshubumen,
                      type:"post",
                      dataType:'json',
                    success:function(r){ 

                    for(var i=0; i< r.length;i++){
                        $("#ych").append("<option value='"+r[i].name+"'>"+r[i].name+"</option>");
                     }
                },
         error:function(){
          console.info("error");
       }    

                      });
        }
    </script>
<div>
    <form>
    <table cellpadding="5" cellspacing="5">
            <tr>
            <td colspan="6">销售部门:</td>
            <td>
                <select id="find" onchange="xiaoshou(this.value)">
                <option></option>
                <option id="zhuguan" value="销售部主管">销售部主管</option>
                <option id="guwen1" value="顾问1部">顾问1部</option>
                <option id="guwen2" value="顾问2部">顾问2部</option>
                </select>
            </td>
            </tr>
            <tr>
            <td colspan="6">销售人员:</td>
            <td class="start" style="200px">
            <select id="ych" name="name" >
                </select>
            </td>
            </tr>

    </table>
    </form>
 </div>

解决方案

你的后台Action可能有问题,前台页面JSP是正确的。我后台用SpringMVC返回的,示例代码:

 @RequestMapping(value="/getList")
    @ResponseBody
    public List getList(String suoshubumen){
        List<Person> list = new ArrayList<Person>();
        if("销售部主管".equals(suoshubumen)){
            list.add(new Person("z1","1"));
            list.add(new Person("z2","1"));
            list.add(new Person("z3","1"));
            list.add(new Person("z4","1"));
        }else if("顾问1部".equals(suoshubumen)){
            list.add(new Person("w1","1"));
            list.add(new Person("w2","1"));
            list.add(new Person("w3","1"));
            list.add(new Person("w4","1"));
        }else{
            list.add(new Person("r1","1"));
            list.add(new Person("r2","1"));
            list.add(new Person("r3","1"));
            list.add(new Person("r4","1"));
        }

        return list;
    }

解决方案二:

没有什么问题啊,数据都返回了,功能就实现了啊

解决方案三:

我发现问题了,你的数据类型写错了,应该是json,你看你写的

解决方案四:

没有什么问题啊,数据都返回了,功能就实现了

解决方案五:

肯定是没传对数据啊,你把类型写成json,然后用火狐看串返回到前台了么,没有就是出错了,我在上班,不能多说了

解决方案六:

我测试了你的代码,就是一个简单问题 dataType:'josn',你写的类型json拼写错误了。还有你的form也拼写错误。改正就好!祝好!

  dataType:'json',

解决方案七:

修改好楼上说的错误后,自己查看数据返回的格式是什么,你代码解析和你返回的格式不一样也获取不到值

你用的jquery版本大于1.4,指定dataType为json一定要返回标准格式的json字符串,怪异模式也不会执行success回调。jquery dataType json

如返回{data:123},执行error,要返回{"data":123}

解决方案八:

1、请把【响应】的返回文本发上来而不是json选项卡。
2、看你的json返回是要解析返回对象的rows
所以for要遍历r.rows。for改与成如下
for(var i=0,item;item=r.rows[i];i++)
{
$("#ych").append(""+item.name+"");

}
3、如果在【响应】选项卡中看到返回的文本以"开头"结尾请使用eval方法把文本转化为js对象
var data=eval("("+r")");
遍历data.rows

时间: 2024-09-18 20:58:24

ajax-请问下这段代码有什么问题,数据也已经返回了的相关文章

java 继承 多态-请问下这段代码正确的原因,为什么父类可以调用抽象方法,执行的是子类重写的方法

问题描述 请问下这段代码正确的原因,为什么父类可以调用抽象方法,执行的是子类重写的方法 public class TestA { public static void main(String[] args) { TestA a = new TestA(); a.start(); } public void start(){ B b = new B(); b.funA(); } public abstract class A { public void funA(){ System.out.pri

请问下这段代码执行什么功能

问题描述 classBase{protectedintb_data;publicvoidf(intnum1,intnum2){System.out.println(this.b_data+"Base.f()"+num1+""+num2);}publicvoidg(intnum1,intnum2){System.out.println(this.b_data+"Base.g()"+num1+""+num2);}publicBas

线程-请问为什么第二段代码无法正确运行?

问题描述 请问为什么第二段代码无法正确运行? package threadlearning; public class BankThread { public static void main(String[] args) { // TODO Auto-generated method stub ChuHu ch1=new ChuHu(); ChuHu ch2=new ChuHu(); Thread t1=new Thread(ch1,"aaa"); Thread t2=new Thr

ip地址-求解释下这段代码...感激不尽

问题描述 求解释下这段代码...感激不尽 u_long ulDestIP; u_long ulDestIP1=inet_addr(a); u_long ulDestIP2=inet_addr(b); unsigned long count = ntohl(ulDestIP2 - ulDestIP1)-1; struct in_addr in; unsigned long hostip; for(unsigned int i = 0; i <=count+1; i++) { hostip = nt

c语言数组定义-哪个大神能帮我解释下这段代码,在线等

问题描述 哪个大神能帮我解释下这段代码,在线等 这个是凯撒密码的代码,哪个大神帮我看哈我的这个里面每句的意思 解决方案 把英文字母变换一下,如D换为AA换为X,B换为Y 解决方案二: 就是获取到输入的字符串,然后对每一位进行判断,如果在区间[dz]或区间[DZ]减3,剩下的加23 解决方案三: 就是获取到输入的字符串,然后对每一位进行判断,如果在区间[dz]或区间[DZ]减3,剩下的加23 解决方案四: 就是获取到输入的字符串,然后对每一位进行判断,如果在区间[dz]或区间[DZ]减3,剩下的加

c++-请问下面这段代码的意思:C++ 中的冒号操作符

问题描述 请问下面这段代码的意思:C++ 中的冒号操作符 PaketRouter类里有一个成员: // Map from ssrc to sending rtp module. std::list rtp_modules_ GUARDED_BY(crit_.get());请问下面的函数里冒号是什么意思? bool PacketRouter::TimeToSendPacket(uint32_t ssrc uint16_t sequence_number int64_t capture_timest

url-求解释下这段代码,拜托了,各位大神,可怜可怜我这个新手吧,

问题描述 求解释下这段代码,拜托了,各位大神,可怜可怜我这个新手吧, 求解释下这段代码,最主要的是详细解释下最后编辑的那个地方,那个好像是各种嵌套吧,所以我希望大神们能一个点一个点的讲~拜托了,各位大神,可怜可怜我这个新手吧, <s:iterator value="gongWenLeiBieList" status="st" var="cil"> <TR> <TD class="tdStyle"

new-关于对象调用问题,求大师解说下这段代码

问题描述 关于对象调用问题,求大师解说下这段代码 public class Test2 { int i = 0; Test2(int i) { this.i = i; } Test2 increament() { i++; return this; } void print() { System.out.println("i = " + i); } public static void main(String[] args) { Test2 t = new Test2(100); t.

图片-谁能帮我看下这段代码什么意思?他有说过是配置文件,不过我没懂

问题描述 谁能帮我看下这段代码什么意思?他有说过是配置文件,不过我没懂 解决方案 就是一般的配置文件呀,用来程序动态读取数据的,数据维护简单方便,可以用来存储一些不太重要的数据, 具体实现可以用java,c#等等,相关java类有,XmlDocument,XmlElement 解决方案二: 存数据的文件,类似数组.json:只不过规则不同,不是key value了