把json数据转成列表

下面是测试,自己把jquery路径改改

<!DOCTYPE html>
<HTML>
<HEAD>
<TITLE>测试</TITLE>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="http://test.com/Js/jquery.js"></script>
</HEAD>
<BODY>

<select name="test"></select>

<br/><br/><br/>
<select name="province">
<volist name="province" id="row">
<option value="{$row[‘area_id‘]}">{$row[‘title‘]}</option>
</volist>
</select>

<ul name="city"></ul>

<script type="text/javascript">

$.fn.ajaxSelect = function(url, options, func){

    var defaults = {send:{data:{}, key:‘id‘, attr:‘value‘}, event:‘change‘, func: null};
    if(typeof func == ‘function‘) options.func = func;
    var settings = $.extend(true, defaults, options);

    return this.on(settings.event, function(){
        settings.send.data[settings.send.key] = $(this).prop(settings.send.attr);
        $.get(url, settings.send.data, function(data){
            if(typeof settings.func == ‘function‘) settings.func(data, $(this));
        });
    });
};

$.fn.jsonList = function(options, func){

    var defaults = {data:[], name:‘name‘, value:‘value‘, option:‘<option value="value">name</option>‘, func: null};
    if(typeof func == ‘function‘) options.func = func;
    var settings = $.extend(defaults, options);

    return this.each(function(){

        var options = (settings.option.search(/<option\b/) > -1)? ‘<option value="">请选择</option>‘ : ‘‘;
        var data = settings.data;
        for(var i in data){

            if(typeof settings.name == ‘object‘){
                textString = settings.name.string;
                for(var j in settings.name.field){
                    textString = textString.replace(settings.name.field[j], data[i][settings.name.field[j]]);
                }
            }else{
                textString = data[i][settings.name];
            }

            if(typeof settings.value == ‘object‘){
                 valueString = settings.value.string;
                for(var j in settings.value.field){
                    valueString = valueString.replace(settings.value.field[j], data[i][settings.value.field[j]]);
                }
            }else{
                valueString = data[i][settings.value];
            }
            var line = settings.option.replace(/"value"/, ‘"‘+valueString+‘"‘);
            options += line.replace(/>name</, ‘>‘+textString+‘<‘);
        }
        $(this).html(options);
        if(typeof settings.func == ‘function‘) settings.func($(this));

    });
};

var data = [
    {"area_id":"1111","title":"aaaa"},
    {"area_id":"222","title":"bbb"},
    {"area_id":"333","title":"ccc"},
    {"area_id":"444","title":"ddd"},
];

$(‘[name="test"]‘).jsonList({
    data:data,
    name:{field:[‘title‘,‘area_id‘], string:‘title-(area_id)‘},
    value:‘area_id‘,
    option:‘<option value="value">name</option>‘
},
function(){
    alert(‘json数组转成列表成功‘);
});

//$(‘select[name="province"]‘).ajaxSelect("{:U(‘Tool/getCity‘)}", { send:{key:‘province_id‘, attr:‘value‘}}, function(data, parent){

//    $(‘[name="city"]‘).jsonList({data:data, name:{field:[‘title‘,‘area_id‘], string:‘title-(area_id)‘}, value:‘area_id‘, option:‘<li><a href="#" data-value="value">name</a></li>‘}, function(){ alert(‘加载完成‘)});
//});

</script>

</BODY>
</HTML>

最后把哪个 ajaxSelect的效果贴出来..

时间: 2024-10-12 20:49:38

把json数据转成列表的相关文章

JSON数据转化成模型

JSON数据转化成模型 // 1.创建url NSURL *url = kSUNUrl(@"video"); // 2.创建request NSURLRequest *request = [NSURLRequest requestWithURL:url]; // 3.发送请求数据 NSOperationQueue *queue = [NSOperationQueue mainQueue]; [NSURLConnection sendAsynchronousRequest:request

SpringMVC中出现&quot; 400 Bad Request &quot;错误(用@ResponseBody处理ajax传过来的json数据转成bean)的解决方法

最近angularjs post到后台 400一头雾水 没有任何错误. 最后发现好文,感谢作者 SpringMVC中出现" 400 Bad Request "错误(用@ResponseBody处理ajax传过来的json数据转成bean)的解决方法 今天开发过程中,在SpringMVC中的Action中处理前台ajax请求传过来的json数据直接转成对应的实体类时出错:400 Bad Request,后台也不报错,400指的的是请求无效(请求有语法问题或者不能满足请求),调试了好长时间

把json数据转化成对象

把json数据转化到一个对象中,再用对象直接调用 1 package com.lxj.register; 2 3 import java.io.BufferedReader; 4 import java.io.IOException; 5 import java.io.InputStreamReader; 6 import java.net.MalformedURLException; 7 import java.net.URL; 8 9 import net.sf.json.JSONObjec

json数据转化成模型对象

具体思想: 1.将模型对象的属性名和属性类型的创建规则  应与json数据的key-value一一对应. 2.在模型对象初始化之前,给模型对象的每一个属性名赋默认的值.比较 NSString类型默认赋值@"",NSNumber默认赋值 [NSNull null] 3.以json数据的key作为属性名,value作为值给模型数据一一赋值. 有三个重要的方法: // 获取类的所有Property 1. objc_property_t *class_copyPropertyList(Clas

json数据转化成实体 存到数据库.

直接看步骤吧 1.一般我们会调用别人给的webservice获取一个字符串数据.如果为String data="xxxxxxxxxx";  这个data事实上就是样例EnterpriseInfoEntity 的多条记录 2.  把data转换为JSONArray JSONArray arr =new JSONArray(); arr = JSONArray.fromObject(data); 3.  我们是调用JSONObject 的toBean方法.讲这条数据相应到我们写的entit

Android JSON数据解析(GSON方式)

要创建和解析JSON数据,也可以使用GSON来完成.GSON是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库.使用GSON,可以很容易的将一串JSON数据转换为一个Java对象,或是将一个Java对象转换为相应的JSON数据. 1.GSON的两个重要方法 在GSON的API中,提供了两个重要的方法:toJson()和fromJson()方法.其中,toJson()方法用来实现将Java对象转换为相应的JSON数据,fromJson()方法则用来实现将JSON数据转换

Android中使用Gson解析JSON数据的两种方法

Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率;本文将介绍两种方法解析JSON数据,需要的朋友可以参考下 Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率. 从结构上看,所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词. 第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组

JSON数据解析(GSON方式) (转)

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 在上一篇博文<Android学习笔记44:JSON数据解析>中,我们使用基本的JSON API完成了在服务器端创建JSON数据,以及在Android客户端对JSON数据进行解析. 其实,要创建和解析JSON数据,也可以使用GSON来完成.GSON是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库.使

android_使用Gson解析json数据

Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率. 从结构上看,所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词. 第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(List),比如"北京,上海". 第三种类型是映射(mapping),也就是一个名/值对(