Javascript 如果选择的选项值为此,jquery将父选择替换为输入
我试图用一个输入字段替换整个下拉选择元素,如果选择的选项值是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不是您需要使用的属性或函数。请尝试此值 试试这个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
<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>