首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用w2ui获取组合框中的字符串?

如何使用w2ui获取组合框中的字符串?
EN

Stack Overflow用户
提问于 2018-12-27 17:28:51
回答 2查看 344关注 0票数 0

我想用框架w2ui在组合框中选择或键入文本。当我键入"Enter“键时,我将获得组合框中的值以将该值推入数组(请参阅我的代码中的addItem函数)。我不知道如何访问组合框中的字符串?

这个组合的文档在这里:http://w2ui.com/web/docs/1.5/form/fields-list

关于我在这里要做的事情,我做了一个简单的解释:https://jsfiddle.net/espace3d/bLughmy9/

这是一个简单的带有标签的待办事项列表。

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
<title>W2UI Demo: fields-3</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script type="text/javascript" src="https://rawgit.com/vitmalina/w2ui/master/dist/w2ui.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://rawgit.com/vitmalina/w2ui/master/dist/w2ui.min.css" />
</head>
<body>

<div style="height: 10px"></div>
<div class="w2ui-field w2ui-span3">
    <label>Combo:</label>
    <div> <input type="combo"> <span class="legend">You can type any text</span> </div>
</div>
<div style="height: 20px"></div>
<style>
.w2ui-field input {
    width: 200px;
}
.w3ui-field > div > span {
    margin-left: 20px;
}
</style>

<script type="text/javascript">

var data={
description:["georges","henry"],
}

var addItem=function(item){
        console.log(item)
        data.description.push(item)
        data.description.sort();
}

$('input[type=combo]').w2field('combo', { 
items: data.description,
});

$( 'input[type=combo]' ).keypress(function(event) {
        if(event.key == 'Enter'){
        console.log( "Handler for .keypress() called." );
        /////////////////////////////////////////
        //WHAT I WANT TO DO
        //addItem(something)
        }
});
</script>
</body>
</html>
EN

回答 2

Stack Overflow用户

发布于 2019-01-02 16:00:55

您可以通过调用$element.w2field()来访问w2field对象。

之后,您可以通过在w2field对象上调用get()来访问内容。

附注:get()可能会返回一个对象,例如,如果您的项是表单{ id: 123, text: "my text" }中的对象,则该对象对w2ui组合框或列表域有效。

在您的示例中,您可以按如下方式更改代码:

代码语言:javascript
复制
$( 'input[type=combo]' ).keypress(function(event) {
        if(event.key == 'Enter'){
            console.log( "Handler for .keypress() called." );
            var w2ui_field = $(this).w2field();
            var value = w2ui_field.get();
            addItem(value);
            w2ui_field.options.items = data.description;
        }
});

请注意,如果要在组合框中显示新项,则必须将它们重新分配给w2field选项。

如果您不想这样做,可以省略w2ui_field.options.items = data.description;部分。

更新的fiddle:https://jsfiddle.net/k548j0w1/

票数 0
EN

Stack Overflow用户

发布于 2021-07-26 17:24:54

我和你有同样的问题。

为了解决我的问题,我获得了列表的JSON对象项,并在COMBOBOX中获得了它的id或文本,如下所示。

代码语言:javascript
复制
$('#yourlistid').w2field().get().id
$('#yourlistid').w2field().get().text
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53942698

复制
相关文章

相似问题

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