我有一个下拉列表,用于选择parentCategory :(汽车,汽车零件,自行车,MC,autobuss等)。
每个类别可能有子类别或子视图(文本框,复选框,下拉列表等)或两者。
每个子类别也可能有子视图(文本框复选框下拉列表等)
示例:
if user selects "car"
{
generate 4 different dropdowns(year model[get options from db], milage[get options from db], bensin or disel, manual/automatic)
generate 1 textField(registration number)
}
if user selects "car parts"
{
generate a subcategory dropdown with items(gps, car parts, tire, car stereo)
//if subcategory.value changes then look if there is subView.
ex: if subcategory.value is "car part", then generate 1 dropdown(whichCarSection)
}
if user selects "bike"
{
generate a subcategory dropdown with items from database
}
实现此请求的最简单方法是什么? 如果parentcategory具有subCategory,我已经能够获得一个下拉列表。 (在我的例子中:当用户选择“轮胎”时)
如何生成子视图?
我在哪里存储子视图元素?
我做了这么久的事情是这样的: 我在mysql中有一个带有类别项的表。
catID - catTitle - hasSubCat
100 - car - 0
120 - car parts - 1
130 - bikes - 1
我在mysql中有一个用于subCategory项目的表。
subCatId - subCatTitle - parentCat
0 - gps - 120
1 - car part - 120
2 - tire - 120
3 - BMX - 130
4 - BMW - 130
5 - Mountain - 130
答案 0 :(得分:0)
我很高兴看到您通过建模UI对数据进行建模。首先,我想看到你在PHP中查看MVC(http://oreilly.com/php/archive/mvc-intro.html) - 然后从你的MVC中决定M(顺便说一句,Ruby on Rails通过它的M直接反映表格。 下一步是决定一个视图。这个应用程序可以在客户端使用PHP生成Javascript列表来表示客户端上的M来控制所有内容 - 它要求下载所有数据。它还可以发送代码将事件附加到UI,以便在客户端交换或生成应用程序的V - 这可以是主类别的一组选项卡,以及带有子类别下拉列表的选项卡或用于选项卡内容的单选按钮等 数据变得更大时的替代方法是将AJAX引入客户端服务器交互。这使客户端和服务器变得复杂,但在数据量较高时使其响应更快。服务器上的M再次响应由V(客户端的视图)生成的事件或输入,由C(控制器)按顺序更新自己。 我希望这会有所帮助,因为我认为提供任何代码并不是最适合您的情况。