我正在尝试为我的菜单编辑器创建一个编辑功能。我得到正确的值,将它们放在表单文本框中,然后尝试用新文本替换当前文本。
首先,用户单击“编辑”按钮,调用此函数:
$(".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>