为了账号安全,请及时绑定邮箱和手机立即绑定

使用 javascript 在 HTML 选择的嵌入 DIV 中显示 DIV

使用 javascript 在 HTML 选择的嵌入 DIV 中显示 DIV

一只斗牛犬 2023-10-17 16:55:07
我正在尝试设置一个页面,人们可以通过在网络表单中选择“开始”来触发调查问卷 - 它会弹出第一个问题的 DIV。当他们回答每个问题(是/否选择)时,它要么打开一个特定于该问题的 DIV,其中显示“不 - 离开,因为 XXXX”,要么在新的 DIV 中提出下一个问题......这会重复大约 8 次。到目前为止,我可以让第一个问题出现,但是当我选择问题 1 的答案时它不会做任何事情 - 它应该使 Q2 DIV 出现或提供上下文 DIV 来说明为什么他们无法继续。我在这个 jsfiddle 链接中有一个(非常)精简的演示    <script src="https://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>    <script src="https://cdnjs.cloudflare.com/ajax/libs/1000hz-bootstrap-validator/0.11.9/validator.js"></script>    <script>      $(function () {        $("#requestSelect").change(function() {          var val = $(this).val();          if(val === "HealthCheck") {            $(".clearAll").hide();            $(".HealthCheck").show();          }        });      });    </script>    <script>                $(function () {                $("#HealthCheck1").change(function() {                    var val = $(this).val();                    if(val === "HealthCheck1Yes") {                        $(".HealthCheck1Yes").show();                    }                    else if(val === "HealthCheck1No") {                        $(".HealthCheck1No").show();                    }                }            });    </script> 
查看完整描述

1 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

你错过了最后关闭你的函数}):


$("#HealthCheck1").change(function() {

    var val = $(this).val();

    if(val === "HealthCheck1Yes") {

        $(".HealthCheck1Yes").show();

    }

    else if(val === "HealthCheck1No") {

        $(".HealthCheck1No").show();

    }

});

工作中的jsfiddle

还有一些其他建议可供您考虑:

  1. 使用正确的自闭合 HTML 标记语法。使用<br />而不是</br>.

  2. 使用正确的缩进(对于所有文档)可以帮助您更快地找到未关闭的函数和其他错误。

  3. 将您的 javascript 放入适当的文件中,然后将其包含在<script src="myscripts.js"></script>. 这将允许您的代码编辑器(如 intellij)检测简单的结束标记/函数问题。


查看完整回答
反对 回复 2023-10-17
  • 1 回答
  • 0 关注
  • 74 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信