PHP 表单:如果选中则显示输入
PHP Form: Show input If is Selected
我正在尝试构建一个 PHP 表单,就好像您 select 下拉菜单中的一个选项会触发一组与该选项相关的输入显示。
示例:我有一个包含三个选项的下拉列表:A、B、C
如果 A 被 select 编辑了一组与下面显示的选项 A 相关的输入。但是,如果 B 被 selected,则显示不同的集合。等等
我将如何执行此操作?
您可以通过 php Ajax 调用来完成此操作
看这里的例子
http://www.w3schools.com/ajax/ajax_php.asp
我会使用 Jquery,真的很容易做到这一点。
根据选择的选项,您可以向元素添加 classes。
所以你可以制作 3 个显示器并让它们不可见。
但是,如果选择了 A,则显示 1 例如可以在可见选项打开的情况下获得 css class。
http://www.w3schools.com/css/css_display_visibility.asp <--- 这应该会派上用场。
非常简单,根据需要适应您自己的环境(如果您必须从其他地方获得选项然后您将需要一些 AJAX) :
$(function() {
$("select").on("change", function() {
if($(this).val() === "") {
$("[data-parent]").hide();
} else {
$("div[data-parent='" + $(this).val() + "']").show().siblings("[data-parent]").hide();
}
});
});
[data-parent] {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
<option value="">Choose</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
<div data-parent="A">
<input type="text" placeholder="additional info for A">
<input type="text" placeholder="additional info for A">
<input type="text" placeholder="additional info for A">
</div>
<div data-parent="B">
<input type="text" placeholder="additional info for B">
<input type="text" placeholder="additional info for B">
<input type="text" placeholder="additional info for B">
</div>
<div data-parent="C">
<input type="text" placeholder="additional info for C">
<input type="text" placeholder="additional info for C">
<input type="text" placeholder="additional info for C">
</div>
我正在尝试构建一个 PHP 表单,就好像您 select 下拉菜单中的一个选项会触发一组与该选项相关的输入显示。
示例:我有一个包含三个选项的下拉列表:A、B、C
如果 A 被 select 编辑了一组与下面显示的选项 A 相关的输入。但是,如果 B 被 selected,则显示不同的集合。等等
我将如何执行此操作?
您可以通过 php Ajax 调用来完成此操作 看这里的例子 http://www.w3schools.com/ajax/ajax_php.asp
我会使用 Jquery,真的很容易做到这一点。 根据选择的选项,您可以向元素添加 classes。 所以你可以制作 3 个显示器并让它们不可见。 但是,如果选择了 A,则显示 1 例如可以在可见选项打开的情况下获得 css class。
http://www.w3schools.com/css/css_display_visibility.asp <--- 这应该会派上用场。
非常简单,根据需要适应您自己的环境(如果您必须从其他地方获得选项然后您将需要一些 AJAX) :
$(function() {
$("select").on("change", function() {
if($(this).val() === "") {
$("[data-parent]").hide();
} else {
$("div[data-parent='" + $(this).val() + "']").show().siblings("[data-parent]").hide();
}
});
});
[data-parent] {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
<option value="">Choose</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
<div data-parent="A">
<input type="text" placeholder="additional info for A">
<input type="text" placeholder="additional info for A">
<input type="text" placeholder="additional info for A">
</div>
<div data-parent="B">
<input type="text" placeholder="additional info for B">
<input type="text" placeholder="additional info for B">
<input type="text" placeholder="additional info for B">
</div>
<div data-parent="C">
<input type="text" placeholder="additional info for C">
<input type="text" placeholder="additional info for C">
<input type="text" placeholder="additional info for C">
</div>