今、editUser()
の機能を実装しています。私は)ボタンjqueryでローカルストレージからユーザ情報を編集
$("#table-list tbody").on("click", ".btn-edit", function() {
operation = "E";
for (var i in tableStore) {
var temp = JSON.parse(tableStore[i])
if ($(this).attr("data-id") === temp.id) {
$enterID.val(temp.id);
$enterFirstName.val(temp.firstname);
$enterLastName.val(temp.lastname);
$enterLPhone.val(temp.phone);
$enterEmail.val(temp.email);
$enterAddress.val(temp.address);
$enterBirthday.val(temp.birthday);
$enterGender.val(temp.gender);
$enterID.attr("readonly", "readonly");
$enterFirstName.focus();
}
}
}をクリックし処理するための関数を作成します。
これは、ローカルストレージからデータを取得するのに役立ちます。次に私がデータに変更するinput
タグに関する情報を変更すると、ローカルストレージに更新されます。これは私がそれを行うに役立つ機能です。
function editUser(tableStore, user) {
tableStore[tableStore] = user
operation = "A"
}
とフォームが、私はそのように扱う提出です:
$("#table-list tbody").on("click", ".btn-delete", function() {
selected_index = parseInt($(this).attr("data-id").replace("Delete", ""));
$(this).parents('tr').remove()
deleteUserInfor();
});
$(".form-information").on("click", ".btn-save-change", function() {
if (operation == "A"){
var newUser = readUserFromDOM();
addUser(tableStore, newUser.serialize());
localStorage.setItem("tableStore", JSON.stringify(tableStore));
}
else {
var editingUser = readUserFromDOM();
editUser(tableStore, editingUser.serialize());
localStorage.setItem("tableStore", JSON.stringify(tableStore));
}
});
しかし、いくつかのことが間違っていると私はデータを保存することはできません。だから間違っていることを私が助けてくれますか?
このマイコードuser manager code pen。
それ以外にも、の操作は、jsの純粋な機能にとっては良い考えではありません。あなたは私をリファクタリングする助けてくださいすることができた場合は、それ
あなたの助けを多くの感謝
'tableStoreは[tableStore] = user'だけでなく、それは間違っている –
の3種類を探しますあなたは私のコードをクリックすることができますもっと理解するためのペンのリンク –
いいえ私はしません - あなたが問題を抱えているコードがここにないなら、あなたはもう少し質問を考える必要があります - あなたが投稿したものからはわかりません私はちょうどその行だけで完全に間違っていることを知っています –