私はこのスクリプト (私の最初のスクリプトの 1 つ) を持っています 。
var addButton =$("#add"),
newResp = $("#resp_input"),
respTextArea = $("#responsibilities"),
respList = $("#resp");
//
function Responsibility(text){
this.text=text;
}
var responsibilities = [];
function render(){
respList.html("");
$.each(responsibilities,function(i,responsibility){
var el = renderResponsibility(responsibilities[i],function(){
responsibilities.splice(i,1);//remove the element
render();//re-render
});
respList.append(el);
});
respTextArea.text(responsibilities.map(function(elem){
return elem.text;//get the text.
}).join("\n"));
}
addButton.click(function(e){
var resp = new Responsibility(newResp.val());
responsibilities.push(resp);
render();
newResp.val("");
});
function renderResponsibility(rep,deleteClick){
var el = $("<li>");
var rem = $("<a>Remove</a>").click(deleteClick);
var cont = $("<span>").text(rep.text+" ");
return el.append(cont).append(rem);
}
上部のボックスを使用すると、入力ボックスに責任を入力して [追加] をクリックすることで、責任をテキスト領域に追加できます。これは私の最初のボックスでは完全に機能しますが、3 つの異なるボックスで機能するにはこれが必要であり、コード 3 を単純に複製せずに、この関数を「責任、テスト、テスト 2」の 3 つのインスタンスすべてに適用する方法に少し行き詰まっています。回と変数の変更。
この種のことはたくさん出てくるに違いないと確信していますが、それを避けることができるかどうかはわかりません. うまくいけば、JavaScriptの経験が豊富な人がこれに光を当てることができます.