0

我通过这些主题来解决我的问题,但我认为我的问题有点不同。

我的表单中有 3 个选择框。命名为“类别”、“子类别”、“主题”。

子类别是从类别选择中填充的,主题是从子类别选择框中选择的。

我创建了一个通用函数,用于使用 jQuery 填充选择框。

我在populateSelectBox父选择框的更改事件上调用该函数 ()。

现在 Subcategory 选择框很容易在 Category 选择框的 change 事件上填充,但是如果子类别只有一个通过 ajax 填充的选项,则不会触发子类别的 change 事件,因为子类别选择框中只有一项。

在那种情况下我该怎么办?

请帮忙。

4

2 回答 2

1

您可以测试收到的选项数量,如果只有一个,请change手动触发事件:

$('#mySubCategorySelect').trigger('change');

要不就:

$('#mySubCategorySelect').change();

另一种方法是在每个标题option的顶部都有一个select有效的标题。就像是:

<select>
    <option>Please choose a category</option>
    <option>some option</option>
</select>

这将要求用户选择一个选项,即使只有一个选项存在。

于 2010-06-02T15:38:01.903 回答
1

发布此答案,因为我需要仅在第二个选择框的更改事件上填充第三个选择框。

感谢 patrick 提供了空白选择选项的想法

因此,我没有通过 PHP 添加一个空的“选择选项”,而是修改了我的 populateSelectBox 函数,使其自动向响应添加一个空白的“选择”选项,就像$element.append('<option value="">Select</option>');这样,用户可以触发更改事件。

于 2010-06-03T06:47:13.667 回答