感谢您抽出宝贵时间考虑我的问题。我正在创建一个界面,允许用户使用UL和LI标签基本上创建类别列表。然后我通过PHP将这些信息存储在MySQL数据库中,这样就可以检索并维护格式化。我已经解决了PHP方面的问题,以及从数据库中提取树并对其进行格式化。我遇到问题的部分是通过表单提交保存列表,并以可以遍历所有数据并知道父/子关系的方式将其传递给PHP。
列表的示例可能如下所示:
<ul>
<li>FAQ
<ul>
<li>Installing SynergiesMOD</li>
<li>Updating SynergiesMOD</li>
<li>Mod Not Working</li>
</ul>
</li>
<li>Characters
<ul>
<li>Necromancer
<ul>
<li>Moves</li>
<li>Guides</li>
</ul>
</li>
<li>Warlock
<ul>
<li>Moves</li>
<li>Guides</li>
</ul>
</li>
</ul>
</li>
</ul>
此列表是完全可编辑的,因此在将任何特定内容提交到要解析并存储在数据库中的PHP代码之前,可以移动,删除或添加新类别。我正在绞尽脑汁,在将数据传递给PHP时保持家族关系的同时,无法想出循环类别的方法。如果你们中的任何人都有任何想法或建议,我将不胜感激。
答案 0 :(得分:1)
您还没有完全描述如何编辑列表中的每个项目。我想我会通过在每个项目上包含超链接来完成此操作,这些超链接将包含每个项目的ID,由下划线连接,例如。
1 FAQ
2 Characters
1_1 InstallingSynergiesMOD
1_2 UpdatingSynergiesMOD
1_3 Mod Not Working
2_1 Necromancer
2_2 Warlock
2_1_1 Moves
2_1_2 Guides
2_2_1 Moves
2_2_2 Guides
我假设层次结构中的每个项目都有一个关联的ID。
单击超链接时,可以显示相同的层次结构,但列表项由带有NAME =“x_y”的INPUT字段替换。如果按下确定按钮(或其他),这将导致提交FORM以及字段的数据。您传递字段的名称以获取ID,然后使用新值更新数据库。最后打印出新列表。
当然,你可以使用JSON / XML XMLHttpRequest而不是使用FORM来做同样的事情。
答案 1 :(得分:0)
每个li
都应该有nodeId
(也许是id
的{{1}},然后您需要在javascript中计算li
,引用它的父母,以维持等级关系