這不是一個偉大的問題的標題,所以如果任何人有更好的方式來閱讀它後,它的話,這將不勝感激。使用jQuery設置DOM屬性並通過Javascript返回'undefined'
泄露的方式,這是作業。這周的任務是重構我國現有的純JS代碼,使用JQM,我有一個轉換的問題,我不能完全弄清楚,這裏是代碼:
function populateItemLinks(key, listItem)
{
var ecLink = $('<a class="padRightRed"></a>');
ecLink.attr("href", "#");
ecLink.attr("key", key);
ecLink.html("Edit Character");
ecLink.on("click", editCharacter);
ecLink.appendTo(listItem);
console.log(ecLink.attr("key"));
ecLink = $('<a class="padLeftRed"></a>');
ecLink.attr("href", "#");
ecLink.attr("key", key);
ecLink.html("Delete Character");
ecLink.on("click", deleteCharacter);
ecLink.appendTo(listItem);
console.log(ecLink.attr("key"));
};
function deleteCharacter()
{
var toDelete = confirm("Do you wish to delete this character?");
if (toDelete)
{
console.log(this.key);
alert("Character was deleted.");
localStorage.removeItem(this.key);
$.mobile.changePage("#home");
}
else
{
alert("Character was not deleted.");
}
}
的問題是,使用.key屬性作爲populateItemLinks函數中鏈接的驗證。當它是strait javascript時,我可以做linkname.key = key;然後用「this.key」將關鍵字返回到deleteCharacter函數中。那麼,現在它總是返回未定義的,我想不出任何不會令人費解的方式來獲得與非JQM版本相同的功能,所以任何幫助將不勝感激。