我通过这些主题来解决我的问题,但我认为我的问题有点不同。
我的表单中有3个选择框。命名为“类别”,“子类别”,“主题”。
从子类别的选择填充子类别,从子类别选择框中选择主题。
我创建了一个通用函数,用于使用jquery填充选择框。
我在父选择框的更改事件上调用该函数(populateSelectBox)。
现在可以在类别选择框的更改事件中轻松填充子类别选择框,但是如果子类别只通过ajax填充了一个选项,则子类别的更改事件不会被触发,因为只有一个项目在子类别选择框。
在这种情况下我该怎么做?
请帮忙
答案 0 :(得分:1)
您可以测试收到的选项数量,如果只有一个,请手动触发change
事件:
$('#mySubCategorySelect').trigger('change');
或只是:
$('#mySubCategorySelect').change();
另一种方法是在每个option
的顶部放置一个select
,它实际上是一个标题。类似的东西:
<select>
<option>Please choose a category</option>
<option>some option</option>
</select>
这将要求用户选择一个选项,即使只有一个选项存在。
答案 1 :(得分:1)
发布此答案,因为我只需要在第二个选择框的更改事件中填充第三个选择框。
感谢patrick提供了空白选择选项的想法
因此,我没有通过PHP添加一个空的“选择选项”,而是修改了我的populateSelectBox函数,以便自动为响应添加一个空白的“select”选项,就像这样{ {1}}以便用户可以触发更改事件。