【问题标题】:Bootstrap x-editable combodateBootstrap x 可编辑组合
【发布时间】:2017-03-05 21:44:23
【问题描述】:

我最近一直在为 Bootstrap 使用 X-editable。 我正在编写一个显示来自 MySQL 数据库的数据的网页。当我点击一个按钮时,我希望我的所有数据都可以编辑。当我点击保存时,页面会自动将更改保存在 MySQL 中。

我已经成功地为文本字段和列表编写了这个程序。但我不能让它与日期一起工作。也许有人有可以帮助我的想法?

这是一个有效的部分示例:

<li id="f-name"><span>Name</span><a href="#" data-type="text" data-pk="1">John</a></li>

我用下面的代码来调用可编辑的

$('#f-name').children('a').editable({
        placement: 'bottom'
    });

并且我可以使用 jQuery 通过这段代码获取值(修改后)

var $val=$('#f-name').children('a').html();

到目前为止,代码运行良好。但是现在让我们看看不起作用的部分:

<li id="f-date"><span>Date: </span><a href="#" data-type="combodate" data-value="30 Apr 2016" data-format="DD MMM YYYY" data-viewformat="DD MMM YYYY" data-template="DD MMM YYYY" data-pk="1"></a></li>

我使用以下方法调用可编辑:

$('#f-date').children('a').editable({
    placement: 'bottom',
});

我尝试过使用与以前相同的$('#f-date').children('a').html(); 代码,但没有成功。如果我打印它,它会显示Undefined。我真的不明白。 如果我查看 Google Chrome 代码检查器(在使用可编辑项之后),我会得到以下信息:

<a href="#" data-type="combodate" data-value="" data-format="DD MMM YYYY" data-viewformat="DD MMM YYYY" data-template="DD MMM YYYY" data-pk="1" class="editable editable-click editable-unsaved" data-original-title="" title="" style="background-color: rgba(0, 0, 0, 0);">17 Jan 1999</a>

所以我认为它应该有效。我应该如何进行?

感谢您的帮助!

最好的问候, 亚恩

【问题讨论】:

    标签: jquery twitter-bootstrap x-editable


    【解决方案1】:

    您应该使用$('#f-date').find('a').text(); 以文本形式检索值。

    检查这个例子

    https://jsfiddle.net/wfeog8mc/

    您也可以使用params.newValue 从 x-editable 事件中获取值,但我现在查看它可能不是 UNIX 时间戳...

    【讨论】:

    • params.newValue 非常适合我。我只需要将时间戳转换为更易读的格式。谢谢你的回答,很有价值:)
    • 哦,太好了。当我在线转换它时,它显示了一些重要的年份。但是,如果我删除最后 3 个零,它就可以正常工作。可能是我正在使用的转换器。
    • 是的,params.newValue 提供的时间戳确实以毫秒为单位。我首先必须将它除以 1000 以秒为单位进行转换,这样我才能使用它。我在网上找到了一些接受毫秒时间戳的转换器,而另一些则没有。
    猜你喜欢
    • 2014-03-04
    • 1970-01-01
    • 2018-05-20
    • 2021-11-05
    • 2014-06-18
    • 2014-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多