首页 > web前端 > js教程 > 正文

JQuery异步加载无限下拉框级联功能实现示例_jquery

WBOY
发布: 2016-05-16 16:59:12
原创
1126 人浏览过
复制代码 代码如下:

/* <br>JQuery异步加载无限极下拉框级联功能 <br>zjy <br>*/ <br>(function ($) { <br>$.ajaxSetup({ async: false }); <br>var url = ""; <br>var parameter = ""; <br>$.fn.extend({ <br>Load: function (urlPath) { <br>url = urlPath.url; <br>parameter = urlPath.parameter; <br>$("#ddl1").append("<option value="0" selected>请选择</option>"); <br>$.getJSON(url, parameter, function (data) { <br>$.each(data.rows, function (i, row) { <br>$("#ddl1").append($("<option></option>").val(row.id).html(row.text)); <br>}); <br>$("#ddl1").change(function () { $(this).Select($(this).val(), this); }); <br>}); <br>$(this).Selected(parameter.parentId, $("#ddl1")); <br>}, <br><br>Select: function (parentId, obj) { <br>//debugger; <br>if (parentId == "0") { <br>return; <br>} <br>parameter.parentId = parentId; <br>$.getJSON(url, parameter, function (data) { <br>$(obj).nextAll(".ddl").remove(); <br>if (data != null) { <br>$("<select>", { <br>"class": "ddl", <br>change: function () { <br>$(this).Select($(this).val(), this); <br>} <br>}).appendTo($("#cascade")); <br><br>$($(".ddl")[$(".ddl").length - 1]).append("<option value="0" selected>请选择</option>"); <br>$.each(data.rows, function (i, row) { <br>$($(".ddl")[$(".ddl").length - 1]).append($("<option></option>").val(row.id).html(row.text)); <br>}); <br>} <br>}); <br>$(this).Selected(parentId, $(obj).nextAll(".ddl")); <br>}, <br><br>Selected: function (parentId, obj) { <br>$(this).GetValue(); <br>//debugger; <br>var selected = "0," + $("#loadselect").val(); <br>$.each(selected.split(","), function (i, row) { <br>if (row == parentId) { <br>//debugger; <br>$(obj).val(selected.split(",")[i + 1]); <br>$(obj).change(); <br>} <br>}); <br>}, <br><br>GetValue: function () { <br>var ddlValue; <br>var ddlCount = $(".ddl").length; <br>for (var i = ddlCount - 1; i >= 0; i--) { <br>if (i != 0) { <br>if ($($(".ddl")[i]).val() != 0) { <br>ddlValue = $($(".ddl")[i]).val(); <br>break; <br>} <br>} else { <br>if ($($(".ddl")[i]).val() == 0) { <br>ddlValue = 0; <br>break; <br>} else { <br>ddlValue = $($(".ddl")[i]).val(); <br>break; <br>} <br>} <br>} <br>$("#selectvalue").val(ddlValue); <br>}, <br>}); <br>})(jQuery); <br></select>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
调用方法
登录后复制
<pre code_snippet_id="193059" snippet_file_name="blog_20140218_4_4987391" name="code" class="javascript"><script type="text/javascript"> <BR>$(function () { <BR>$("#cascade").Load({ url: '@Url.Action("GetCountryArea")', parameter: { "parentId": 0, "random": Math.random() } }); <BR>}); <BR></script>
登录后复制


<div id="cascade"> <br><select id="ddl1" class="ddl"></select> <br>
</div> <br><input id="loadselect" hidden="hidden" value="1,2"> <br><input id="selectvalue" hidden="hidden">
登录后复制




登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制



相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板