首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Framework7智能选择显示所选项目

Framework7智能选择显示所选项目
EN

Stack Overflow用户
提问于 2017-01-09 13:28:30
回答 3查看 4K关注 0票数 0

我有一个聪明的选择:

代码语言:javascript
复制
<div class="list-block">
    <ul>
        <li>
            <a href="#" class="item-link smart-select" data-back-on-select="true" data-open-in="popup">
                <select name="projects" id="projects">
                  <option value="0" selected>Please choose...</option>
                  <option value="1" >House build</option>
                </select>
                <div class="item-content">
                    <div class="item-inner">
                        <div class="item-title">Aufträge</div>
                    </div>
                </div>
            </a>
        </li>
    </ul>
</div>

当用户选择一个项目时,我创建了一个cookie并将值写入其中。在重新加载或关闭页面后,我在cookie中读取并选择项目。这是可行的。但是,我总是输入“请选择”条目,而不是所选的项目。但是当我点击列表时,正确的项目是选择,然后关闭我再次看到的列表,请选择。下面是我如何选择值的方法:

代码语言:javascript
复制
$$("#projects").val(getCookie("timerTasks"));
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-05-16 18:50:55

对于目前需要此答案的人来说,find("option:selected")不再适用于此目的。请改用find("option:checked")

最终的代码将是

代码语言:javascript
复制
$$("#projects").val(getCookie("timerTasks")).parent().find('.item-title').html($$("#projects").find("option:checked").text());
票数 2
EN

Stack Overflow用户

发布于 2017-12-04 06:05:58

@tinyCoder几乎是正确的,除了你需要更新.item-after,而不是.item-title.item-title是smart select的“标签”,.item-after显示所选值。

此外,由于.html()将呈现超文本标记语言,而我们只需要文本,因此我认为使用.text()更合适。所以,我的一行代码看起来像这样:

代码语言:javascript
复制
$$("#projects").val(getCookie("timerTasks")).parent().find('.item-after').text($$("#projects").find("option:selected").text());

Framework7 v1.6.5 (2017年9月)

票数 2
EN

Stack Overflow用户

发布于 2017-01-10 15:56:01

我以前遇到过这种情况。在从cookie中选择值之后,您必须更新item-title类:

具体内容如下:

代码语言:javascript
复制
// Select your value
$$("#projects").val(getCookie("timerTasks"));

// Selected value text
var selected_text = $$("#projects").find("option:selected").text();

// Change item-title
$$("#projects").parent().find('.item-title').html(selected_text);

一行:

代码语言:javascript
复制
$$("#projects").val(getCookie("timerTasks")).parent().find('.item-title').html($$("#projects").find("option:selected").text());

你可以在那里看到this is a common issue,我想知道为什么它还没有修复。

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

https://stackoverflow.com/questions/41541531

复制
相关文章

相似问题

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