ruby on rails - jQuery-TokenInput预填充数据更改的意外结果



我得到意想不到的结果与jQuery-TokenInput预填充数据集的变化。
我遵循Railscasts -令牌字段,并使用Railscasts -令牌字段更新了必要的代码。到最新的Rails版本。

处理令牌搜索查询的coffeescript代码是:

jQuery ->
$('#user_tracker_ids').tokenInput '/trackers.json'
prePopulate: $('#user_tracker_ids').data('load')
minChars: 3
hintText: "Type in name"
preventDuplicates : true

我的奇怪结果是:

  1. 案例1:[]最初病例(正确)
    当令牌字段是空的,即没有预填充的数据,我输入任何no。对于令牌,我在服务器端操作中获得与令牌关联的ID,这是正确的。

  2. 案例2:[结束案例](正确)
    当我删除之前输入的所有ID时,即我删除所有预填充的数据,我得到0 ID,这也是正确的。

  3. 情况3 : [失败情况下][问题]
    当在令牌输入中已经有值,并且我更新它们时,例如添加更多令牌,删除一些现有令牌,我只获得在当前编辑会话中添加的令牌的ID。对query-tokenInput中预填充的数据所做的更改不会发送到服务器端操作。

我确定我在这里遗漏了一些基本设置,但我无法找到它并修复它。
如果你需要更多信息。要找到问题,请让我知道。

使用

                $(elementId).tokenInput("",
                {
                    prePopulate:JSON.parse(YourJsonFormatStringHere)
                });

这是我的一个错误,而且确实是一个愚蠢的错误。
prePopulate: $('#user_tracker_ids').data('load')

输入prePopulate呼叫,发送的数据不完整。我只传递了对象的name字段,没有传递id字段。

因此,令牌输入能够正确显示预填充数据的名称,但是对它所做的任何更改都不会反映出来,正如我在上面的问题中提到的那样。

相关内容

  • 没有找到相关文章

最新更新