メニュー エディターの編集機能を作成しようとしています。適切な値を取得してフォームのテキスト ボックスに配置し、現在のテキストを新しいテキストに置き換えようとしています。
まず、ユーザーが「編集」ボタンをクリックすると、次の関数が呼び出されます。
$(".edit").click(function(){
$(this).addClass("editing");
var menulink = $(this).next().find('a').attr('href');
var menudisplay = $(this).next().find('a:first').text();
$("#editlink").val(menulink);
$("#editdisplay").val(menudisplay);
});
次に、値が挿入されたフォームがポップアップ ボックスに表示されます。
<div id="edit-box" class="login-popup">
<a href="#" class="close"><img src="../../../images/close5.png" class="btn_close" title="Close Window" alt="Close" /></a>
Enter the link for the menu item: <input type="text" id="editlink" /><br />
Enter the text to display: <input type="text" id="editdisplay" /><br />
<button id="saveEdit">Save Menu Item</button>
</div>
次に、ユーザーが保存ボタンをクリックすると、次の関数が呼び出されます。
$("#saveEdit").click(function(){
var editlink = $("#editlink").val();
var editdisplay = $("#editdisplay").val();
**/* REPLACE THE CURRENT INFORMATION WITH THE NEW INFORMATION */**
$('#mask, .login-popup').fadeOut(300 , function() {
$(".edit").removeClass("editing");
$('#mask').remove();
});
$('.tree_item').each(function(){
$(".delete, .edit").remove();
});
$.post('edit-menu-process.php',
{tree: $('#nav').html()},
function(data){$("#printOut").html(data);}
);
alert("Menu item has been edited.");
location.reload();
});
リスト項目の適切な部分を置き換えるのに問題があります。コードを作成する必要がある領域を太字にしました。この関数の残りの部分は、新しい値を取得し、マスクとクラスとボタンを取り除き、保存プロセスに投稿し、ページをリロードします。ガイダンスをいただければ幸いです。
リスト項目の例:
<li class="tree_item"><span><a href="index.php" class="menulink">Home</a></span></li>