我想了解X-editable如何存储值。X-editable就地编辑插件如何存储值?
例如,我有以下代码:
HTML:
<a class="editable" data-type="select" data-value="1">value-1</a>
的JavaScript:
$.fn.editable.defaults.mode = 'inline'; $('.editable').html('value-2'); $('.editable').data('value',2); $('.editable').editable({ source: function() { return [ { value: 1, text: "value-1" }, { value: 2, text: "value-2" }, { value: 3, text: "value-3" } ]; } });
正如你所看到的,它工作得很好。在第一步中,我声明下拉的值等于“值-1”,然后在JavaScript中将其更改为“值-2”。因此,您可以在页面上显示“值-2”,在点击下拉相同的值后,可以选择“值-2”。
在这一步,我将修改JavaScript中的位,如下:
//$('.editable').html('value-2'); $('.editable').data('value',2);
同样的结果是相当可预期的。您将在页面上看到“值-1”,但在打开下拉菜单时将选择“值-2”。
现在让我们改变JavaScript代码以相反的方式
$('.editable').html('value-2'); //$('.editable').data('value',2);
这样的修改后的页面上的值将等于“值-2”,但在下拉选择的值开始编辑时将成为“价值1”。所以也是非常合理的行为。
问:
预计不会对我来说什么是是,节省通过点击编辑控制的“确定”按钮不会改变data-value
属性的变化,它只能改变显示的文本。例如,如果我们将值更新为"value-3"
并单击“确定”,data-value
属性将仍然等于1.那么插件在再次打开时如何在下拉列表中选择适当的值?
UPD:
从更改代码的编辑价值的最恰当的方法是使用
$('.editable').editable('setValue', 'value-1');