私はこのselectListプラグインを使用していますhttp://odyniec.net/projects/selectlist/
問題は、ユーザーが追加する要素ごとに、数量を指定できるようにすることです。テンプレートでこれを行うことができます:
$(document).ready(function () {
$('#mySelect').selectList({
clickRemove: false,
template: '<li><a>%text%<a/> - <input id="cnt_%value%" name="cnt%value%" type="text" value="1" /></li>'
});
});
clickRemove を false に設定する必要があります。それ以外の場合は、テキスト ボックスをクリックして要素を削除します。ただし、clickRemove: false では、ユーザーが要素を削除できるようにする方法がわかりません。
@Esailja からの提案を試してみましたが、これはすべてのアイテムを削除するために機能します。
$("ul.selectlist-list").on("click", "a", function () {
var selectList = $('#mySelect').selectList({ instance: true });
selectList.remove();
});
また、ハードコーディングされた ID を remove() に渡すこともできますが、それは機能しますが、削除しようとしている要素に関連付けられた値が見つからないようです。入力要素の値は数量であり、選択したアイテムの ID ではありません。
では、選択したアイテムの値を取得して削除するにはどうすればよいですか?
テンプレートに削除を追加しようとしました:
template: '<li><a href="#" onclick="$(this).parent().remove()">%text%<a/> - <input id="cnt_%value%" name="cnt%value%" type="text" value="1" /></li>'
これにより、アイテムが表示から削除されますが、再選択することはできません。これを行う方法、またはこのタイプの機能を可能にする別のプラグインはありますか?