首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在select2中访问格式化文本

在select2中访问格式化文本
EN

Stack Overflow用户
提问于 2014-10-27 22:35:36
回答 2查看 610关注 0票数 0

在select2中选择一个选项后,我将对文本进行格式化。它看起来是格式化的。我希望稍后访问格式化文本。但是,当我使用

代码语言:javascript
运行
复制
$('#mySel').select2('val') or 
$('#mySel').select2('data').text 

这些只返回原始选项文本。

下面是我的formatResults函数

代码语言:javascript
运行
复制
function formatResults(state) {

    if (!state.id) return state.text; // optgroup
    var result = "<a style='color:inherit; text-decoration:none;' onclick= 'return     myonclickevent(this);' id= '" + state.id + "' class='"+"ops"+ "'>"
        + operator[state.id] + " ( " + state.text+" )</a>";
    return result;

 }

我希望返回的文本以“运算符(选项)”形式返回。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-28 18:26:13

我使用jquery直接查询select2元素以获得格式:

代码语言:javascript
运行
复制
  var columnName = $("#mySel").select2("data").text;       $('#s2id\_mySel').find("#"+columnName).attr('class')
票数 0
EN

Stack Overflow用户

发布于 2014-10-27 23:39:07

只有在Select2显示数据时才会调用格式化函数,并且它们需要Select2内部使用的原始对象。

当您调用select2("data")时,您正在检索Select2使用表示数据的内部对象。在调用select2("val")时,基本上是获取这些对象的id属性,在大多数情况下是这样。

如果要在Select2之外使用格式化函数,则必须接受这些对象并手动将它们传递给您的格式化函数。因此,与其调用$("#mySel").select2("data"),不如调用formatResults($("#mySel").select2("data"))

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26598015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档