Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用js创建一个select dependent_Javascript_Html - Fatal编程技术网

Javascript 使用js创建一个select dependent

Javascript 使用js创建一个select dependent,javascript,html,Javascript,Html,我想做一个依赖于另一个选择的选择选项,我看到有一种使用固定值数组的方法,但是每次我们在表单上添加一个新的表单字段时,我的数组都会被重新加载。我想当我选择op1时,它会在第二次选择时显示op1选项 选择一 选择二 ans 1 op1 ans 2 op2 ans 1 op2 如果Jquery是一个选项,那么您可以使用以下内容: <script type='text/javascript'> $(function() { $('#id1').change(

我想做一个依赖于另一个选择的选择选项,我看到有一种使用固定值数组的方法,但是每次我们在表单上添加一个新的表单字段时,我的数组都会被重新加载。我想当我选择op1时,它会在第二次选择时显示op1选项

选择一 选择二 ans 1 op1 ans 2 op2 ans 1 op2
如果Jquery是一个选项,那么您可以使用以下内容:

    <script type='text/javascript'>
    $(function() {
        $('#id1').change(function() {
            var x = $(this).val();
            $('option[relone!=x]').each(function() {
               $(this).hide();
            });
            $('option[relone=x]').each(function() {
               $(this).show();
            });
        });
    });
    </script>
然后扩展: 你可以用很多方法来解决这个困境,这取决于你的答案库的变化程度

如果您只对使用普通javascript感兴趣,那么让我们从基础开始。您需要查看html的onchange事件,如下所示:

<select onchange="myFunction()">
在w3schools网站的Html onchange事件属性中:

onchange属性在元素的值 改变了

这将允许您根据此元素的值做出决策。然后,在您的js中,可以从这里分支:

您可以使用Ajax并将该值作为get变量传递给它,以从单独的文件中获取这些选项。 您可以通过.getElementbyIdid2和.getElementsByTagNameoption的组合从第二个div中获取所有选项,然后在每个循环中检查它们各自的relone属性,隐藏不匹配的选项,并显示匹配的选项。
实际上,这一切都取决于你想从那里做什么,但我个人只会选择Jquery方法

这里有一个没有Jquery的方法:

当您在第一个selectbox中选择一个选项时,它将隐藏所有与其relone不匹配的内容

var id1=document.getelementbyid1; var id2=document.getelementbyid2; id1.addEventListenerchange,change; 功能改变{ 对于变量i=0;i你的JavaScript是什么?你是说@Rafael我提供的链接很有用吗?或者你还需要别的什么。