我正在使用select2 http://ivaynberg.github.com/select2/jquery 插件可以重新格式化我的长选择选项。一切都按预期进行,除了当我提交表单时id
值被保存为值,而不是值(在本例中lang
)。我不明白我做错了什么。
该脚本如下所示:
var langs=[{id:0,lang:'English'},
{id:1,lang:'Afrikaans'},
{id:2,lang:'Albanian'},
{id:3,lang:'Zulu'}];
function format(item) { return item.lang; };
$("#field_4").select2({
placeholder: "Select your language",
data:{ results: langs, text: 'lang' },
formatSelection: format,
formatResult: format
});
这是标记:
<input id="field_4" name="field_4" type="text" class="regular-text " value="3" />
当我在控制台中记录返回值时,我看到:
{Object}
O: Object
id: "1"
text: "Afrikaans"
UPDATE:我在这方面取得了一些进展。如果我将以下内容添加到构造函数对象(对于 select2),我可以保存正确的值(而不是id
)。但是,当我添加到<select>
使用 AJAX 来获取选项。
id : function(object) {
return object.lang;
}