Select2 4.0 ajax/processResults 中返回 id="" 的数据,选择不了

对ajax动态读取数据,选择({id:"",text:"全部"})id=“”的值选项时,在select元素中动态生成option代码并调用val选中该选中,问题在于动态生成option的value值不为"",导致选择不了(Firefox环境,其它未测试)

具体执行顺序为:(select2.full.js)

A.选中元素(如原html中无该option的话,根据data生成一个option 并选中它)

B.生成option元素

在3185行 创建option 元素

在3188行 设置内容时,将元素option的text,value默认都置为了text的内容"全部"(Firefox环境,其它未测试)

在3194行  判断 if(data.id) 行,当id为""时,则不通过即option.value为text的"全部"导致选择不了.

解决方法为:

1.可将3194行的if(data.id) 改为 if(data.id || data.id==="") 如通过ajax从远程读取在$("xx").select(),后通地$("xx").val("").

(如果想 初始时+及每次ajax读取数据后 都显示全部,该方法还需修改3992行,Select2 4.0 配置了 placeholder 及 results 有相同的选项,会在下拉结果中无该元素的原因),修改代码出现BUG自行脑补吧。

2.在页面html代码时:<select><option value="">全部</option></select>

来自为知笔记(Wiz)

时间: 2024-12-31 05:45:44

Select2 4.0 ajax/processResults 中返回 id="" 的数据,选择不了的相关文章

Ajax请求php返回json对象数据中包含有数字索引和字符串索引,在for in循环中取出数据的顺序问题

//php中的数组数据格式 Array ( [all] => Array ( [title] => ALL [room_promotion_id] => all ) [best_available_rate] => Array ( [title] => Best Available Rate [room_promotion_id] => best_available_rate ) [30] => Array ( [room_promotion_id] =>

jquery序列化form表单使用ajax提交后处理返回的json数据

这篇文章主要介绍了jquery序列化form表单,使用ajax提交后处理返回的json数据的示例,需要的朋友可以参考下 1.返回json字符串: ** 将一个字符串输出到浏览器 */    protected void writeJson(String json) {        PrintWriter pw = null;        try {            servletResponse.setContentType("text/plain;charset=UTF-8"

Ajax请求ashx 返回 json 格式数据常见问题

问题:ashx 返回的字符串json格式,在前台ajax自动解析失败. 问题分析:经过排查,发现是拼接json时出现” ’  “单引号,jquery无法解析,用” “ “双引号才可以.例如: string strjson="[ { 'userName':'test'}]"; //单引号导致jquery无法自动解析. string strjson="[ {\"userName\":\"test\"}]"; // 双引号可以解析:

Jquery 使用Ajax获取后台返回的Json数据后,页面处理

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <sc

ajax 请求 对json传的处理 Jquery 使用Ajax获取后台返回的Json数据后,页面处理

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <sc

Ajax获取代理返回的Json数据

 [背景] Ajax在开发过程中使用的很多,局部刷新.动态加载等功能,非常受到用户的青睐,它可以接收代码返回的xml.html.Json等格式,本人主要讲述返回Json格式. 下面的代码是判断用户输入的密码是否与当前密码一致. [参考代码] 1.Js代码: function CreateXMLHTTP() { // 创建AJAX请求对象,系统不考虑跨浏览器情况 var progids = ["Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0&

springmvc通过ajax异步请求返回json格式数据

jsp 首先创建index.jsp页面 <script type="text/javascript"> $(function () { $("#username").click(function () { $.ajax({ url: "list",//请求地址 type: "POST", dataType: "json", success: function(data) {//data是默认的,

B表中的pid对应A表中id,查询A表中数据,根据b表中对应a表中该id的数据数目排序

select a.*,count(*) as c from a left join b on a.id=b.aid group by a.id ORDER BY c desc

jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表

对于问题从后台获取json数据,将内容填充到下拉列表,代码非常简单,具体过程请看下面代码. 需求:url:链接     par:ID       sel:下拉列表选择器 function BuildSelectBox(url, par, sel) {  $(sel).empty();  $.getJSON(url, { id: par }, function (json, textStatus) {   for (var i = json.length - 1; i >= 0; i--) {