Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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 如果选择的选项值为此,jquery将父选择替换为输入_Javascript_Jquery - Fatal编程技术网

Javascript 如果选择的选项值为此,jquery将父选择替换为输入

Javascript 如果选择的选项值为此,jquery将父选择替换为输入,javascript,jquery,Javascript,Jquery,我试图用一个输入字段替换整个下拉选择元素,如果选择的选项值是777 $document.readyfunction{ $mylist.changefunction{ //var val=$:选中,this.val; ifthis.val==777{ $mylist.replaceWith; } }//更改函数结束 }//文档就绪结束 什么都不存在 1. 2. 3. 但它不起作用。哪里出错了?.val在javascript中不是有效的属性,它是jquery方法 您应该在此处使用干净的javascr

我试图用一个输入字段替换整个下拉选择元素,如果选择的选项值是777

$document.readyfunction{ $mylist.changefunction{ //var val=$:选中,this.val; ifthis.val==777{ $mylist.replaceWith; } }//更改函数结束 }//文档就绪结束 什么都不存在 1. 2. 3. 但它不起作用。哪里出错了?

.val在javascript中不是有效的属性,它是jquery方法

您应该在此处使用干净的javascript this.value或jquery$this.val而不是this.val:

$document.readyfunction{ $mylist.changefunction{ 如果$this.val==777{ $mylist.replaceWith; } };//更改函数结束 }; // 文档就绪结束 什么都不存在 1. 2. 3. 您正在使用的val不是您需要使用的属性或函数。请尝试此值

试试这个

          <script type="text/javascript">

      $(document).ready(function(){

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

      var val = $("option:selected",this).val();
      if(val == "777"){

      $("#mylist").replaceWith('<input type="text" name="my_name" placeholder="xxx" required="required" />');
      }
      });
      });



      </script>

尝试用$this.val替换this.val?哪个部分不工作?您是否应该具有返回新创建的带有一个值的功能?@DavidThomas输入不会出现,从下拉列表中选择777值。我如何返回新创建的。我的评论是解决方案;但是你也可以看看下面写的解决方案@luna.romania比$this.val快,它也可以工作,所以+1:@julkas是的,它是本地属性,所以速度更快。this.val不能工作,但是this.value可以工作,它比$this.val快:
          <script type="text/javascript">

      $(document).ready(function(){

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

      var val = $("option:selected",this).val();
      if(val == "777"){

      $("#mylist").replaceWith('<input type="text" name="my_name" placeholder="xxx" required="required" />');
      }
      });
      });



      </script>