
[英]jquery Show id option only if selected {help}
我只想按ID显示所选类别的子类别。 我尝试使用分离的select ,但是使用相同的名称很长,因为它需要检查每个名称是否为空... 也许我错了...我需要一些想法。 这是我的HTML: 这是我的jQuery代码: 提前致谢 :) ...
[英]is there a way to show command only after the option is selected in php
提示:本站为国内最大中英文翻译问答网站,提供中英文对照查看,鼠标放在中文字句上可显示英文原文。
我无法弄清楚在选择选项后如何放置所选代码。
我正在使用 laravel,但我认为它与 laravel 框架无关...
<select id="idjenisuniform" name="idjenisuniform" style="width: 100%;">
<option value=""></option>
@foreach($idjenisuniform as $g)
<option value="{{$g->id}}" >{{$g->badanuniform}}</option>
@endforeach
</select>
( idjenisuniform
来自 controller,它有效),但我只是不知道从选项中完成选择后该怎么做。
它选择police
-> the id is 1
我要实现:
如果它的选项是1
,那么它将显示其他选项以显示他在哪个组。例如detective
。
总之,我正在尝试创建一个 select 选项,在选择它之后,它将继续执行与选项中的前一个 id 相对应的下一个 select 选项。
请帮忙。
由于您想要一种取决于用户交互的效果,因此最好使用 javascript 来获得您想要的效果。 php,选择要go一路返回web服务器处理,然后将结果一路传回浏览器,结果刷新整个web页面。 使用 javacript,一切都发生在浏览器中。
但是,您要求 php 解决方案,所以这是最简单的方法。 假设第一个 select 元素名为“select-one”,第二个 select 元素名为“select-two”
创建两个 forms。注意第二个表单有一个 ID。
[form action="/url/" method="whatever"]
[form id="other-form" action="/url/" method="post"]
在主表单(没有 ID 的表单)中,放置所有表单元素。 此外,放置另一个与第一个 select 元素同名的隐藏元素(“select-one”);
[form]
[input type="hidden" name="select-one"]
... all other elements
[/form]
现在,当您添加第一个 select 元素时,给它一个新属性,以便它与“其他形式”而不是与主形式相关联。 另外,给它一个ID。
[select id="select1" name="select-one" form="other-form"]
您必须添加一点 javascript,但并不多。 如果您没有设置任何其他 javascript,只需将它放在 web 页面的底部,就在 [/body] 标签上方。
[script]
const select1 = document.querySelector('#select1');
select1.addEventListener('change', (event) => event.target.form.submit());
[/script]
javascript 将提交与#select1 关联的表单。 由于我们将元素分配给“other-form”,这就是将要提交的表单。
对于 php:我已经很长时间没有使用 Laravel 了,所以我在这里只提供一些普通的 php。
$options_one = ['One', 'Two', 'Three'];
$options_two = [
'One' => ['Foo', 'Bar', 'Baz'],
'Two' => ['Boom', 'Bang', 'Bam'],
'Three' => ['Fee', 'Fie', 'Fo', 'Fum']
];
$select_one = (isset ($_POST['select-one']) ? $_POST['select_one'] : false;
// do some input validation
现在对于 forms:
<form id="other-form" method="post" action = ""></form>
<form id="main-form" action="">
<input type="hidden" name="select-one" value="<?php echo $select_one ?>">
<!-- This element is assigned to "other-form" -->
<select form="other-form" name="select-one" id="select1">
<option value="">Select One...</option>
<?php foreach($options_one as $option) {
$option = ($select_one === $option) ? "<option selected>$option</option>" : "<option>$option</option>";
echo $option;
}?>
</select>
<select name="select-two">
<?php
$options = ["The first choice has not been selected"];
if (array_key_exists($select_one, $options_two)) {
$options = $options_two[$select_one];
}
foreach ($options as $option) {
echo "<option>$option</option>";
}
?>
</select>
<!-- other inputs in your form -->
</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.