プロジェクトにlocalstorageを使用していて、tablesorter2jqueryプラグインを使用してテーブルを並べ替えようとしています。次のエラーが発生し続けます。
Uncaught TypeError:未定義のプロパティ「行」を読み取ることができません
送信ボタンのクリックで実行されている関数があり、ローカルストレージからこれらの行を追加します。これは、フレンドリーなjavascriptコンソールが存在しないと信じています。
元のマークアップの行ではなく、ローカルストレージから追加された行を呼び出す方法はありますか?
テーブル行を追加するためのコードは次のとおりです。
$(document).ready(function(){
$.extend($.fn, {
storeitem: function() {
//add a new id for each array
$newTeam = $('#team');
//set up unique ids for each array
var i = Number(localStorage.getItem('team-counter')) + 1;
// create condition to add or loop through new entry
if ($newTeam.val() !== "") {
// Take the value of the input field and save it to localStorage
localStorage.setItem("team-" + i, $newTeam.val());
// Set the to-do max counter so on page refresh it keeps going up instead of reset
localStorage.setItem('team-counter', i);
}
//use serializeArray to simplify array creation
// var teaminfo = $("#newTeamForm").serializeArray();
var teaminfo = {};
var givemethat = $.each($('#newTeamForm').serializeArray(), function() {
teaminfo[this.name] = this.value;
});
//alert(teaminfo.teamname);
//$('div.second').replaceWith('<h2>New heading</h2>');
$("#standings tr:last-child").after('<tbody><tr><td>' + teaminfo.teamname + '</td> <td></td><td></td> <td></td></tr></tbody>' );
$("#standings").tablesorter();
//$("#standings > tbody:last").after("<tr>" + + "</tr>");
//store data in key value pair and stringify
localStorage.setItem("team-" + i, JSON.stringify(teaminfo));
// var neat = localStorage.setItem('teamname')
var teamName = JSON.parse(localStorage.getItem("team-" + i));
}//storeitem
});//extend
});//doc ready
ソート機能を実行するために、次のコマンドを実行しました。
$('#standings').tablesorter();
この関数は、テーブル行を手動でマークアップに追加したときに機能しましたが、上記の関数を使用してローカルストレージから追加した場合に機能しました。
これが理にかなっている場合はお知らせください。私は新しい開発者ですので、あいまいさをお許しください。