0
をsubmitedされているのであれば、私は次のようSELECT2があります。デフォルトでは選択2変更入力名タグは
productFamilySelect.select2({
tags: true
});
関連したselect要素の名前はproduct_family_id
ので、入力の名前を変更する方法があります例えば、product_family_name
と入力した場合、選択した値が入力されていますか?これは、すでに存在している価値と、ユーザーが考えていた価値を確実に区別するために、バックエンドで行うことができるようなものです。この値は実際には数値である可能性があるため、データベース内のIDによるチェックは実際には適していません。
は、まず、そのようcreateTagコールバックを追加します:
はproductFamilySelect.select2({
tags: true,
createTag: function (params) {
var term = $.trim(params.term);
if (term === '') {
return null;
}
return {
id: term,
text: term,
newTag: true
}
}
});
次に、以下のリスナーを追加します。
productFamilySelect.on('select2:select', function (e) {
if (e.params.data.newTag === true) {
$(this).attr('name', 'product_family_name');
} else {
$(this).attr('name', 'product_family_id');
}
});
はそう