我正在使用基于http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/的Jquery自动完成功能。我可以从文本框中选择一个值,并将其添加到列表中,如示例中所示。是否可以将所选值添加到隐藏字段?例如<input type='hidden' value='value 1,value 2, value 3' name="SelectedValue" id="SelectedValue"/>
答案 0 :(得分:1)
$('input#suggest').result(function(event, data, formatted) {
$("#SelectedValue").val( $("#SelectedValue").val() + "," data );
});
答案 1 :(得分:1)
要向隐藏字段添加多个值:
var hdnValue = $('hdnFieldName').val();
$('hdnFieldName').val(hdnValue +','+selectedValue);
同时查看string.join。
答案 2 :(得分:0)
不要重新发明轮子。只需使用这段jQuery。对于每个自动完成输入字段,它使用原始输入字段的名称创建隐藏字段。在该隐藏字段中,存储自动完成的密钥。提交时,将提交密钥。您无需为后端更改任何内容。
http://www.petefreitag.com/item/756.cfm
$('input.YourClassName').each(function() {
var autoCompelteElement = this;
var formElementName = $(this).attr('name');
var hiddenElementID = formElementName + '_autocomplete_hidden';
/* change name of orig input */
$(this).attr('name', formElementName + '_autocomplete_label');
/* create new hidden input with name of orig input */
$(this).after("<input type=\"hidden\" name=\"" + formElementName + "\" id=\"" + hiddenElementID + "\" />");
$(this).autocomplete({source:'employee-search-json.cfm',
select: function(event, ui) {
var selectedObj = ui.item;
$(autoCompelteElement).val(selectedObj.label);
$('#'+hiddenElementID).val(selectedObj.value);
return false;
}
});
});