如何使用TagIt为jQuery将标记映射到ID值?

Mic*_*umo 9 jquery jquery-ui tag-it

我发现了一个名为TagIt的可爱小标记脚本:

http://aehlke.github.io/tag-it/examples.html

它非常简单,但是我想知道如何让用户输入标签(来自我预定义的标签列表)并让它们映射到实际的ID号,而不是标签名称本身?

在表单提交上,我希望能够提交ID列表,如下所示:

3,7,22,56,77
Run Code Online (Sandbox Code Playgroud)

哪个会映射到用户选择的标签,例如:

rock,indie,blues,jazz,world
Run Code Online (Sandbox Code Playgroud)

我的标签将来自一个标签表,每个标签都带有主键,我希望这些主键存储在用户正在创建的帖子列中.

基本上,我希望用户看到标签的漂亮名称,但是要让表单实际提交ID值.这可能吗?

这是我目前的JS:

var genreTags = [

    'Indie',
    'Electronic',
    'Pop',
    'Urban',
    'Metal',
    'Jazz',
    'Blues',
    'World',
    'Rock',
    'Classical',
    'Reggae'

];

$("#genre").tagit({
    availableTags: genreTags,
    tagLimit: 3
});
Run Code Online (Sandbox Code Playgroud)

这是一个简单的单词标签列表,但我想这些都需要是对象.就像是:

{ "id" : "3", "name" : "rock" }
Run Code Online (Sandbox Code Playgroud)

是否可以执行此类操作,然后使用ID作为值放置在表单字段中?

任何帮助赞赏.

谢谢,迈克尔.

Nup*_*pur 9

可以使用标签和id对,并将其与TagIt集成.

由于列表是预定义的,因此您可以声明id-label对.

var availableTags = [
{value: 1, label: 'tag1'},
{value: 2, label: 'tag2'},
{value: 3, label: 'tag3'}];
Run Code Online (Sandbox Code Playgroud)

这个jsfiddle会给你一个想法.