Javascript jQuery不显示表单字段
我有下面的jQuery脚本Javascript jQuery不显示表单字段,javascript,jquery,html,Javascript,Jquery,Html,我有下面的jQuery脚本 <script> $(document).ready(function(){ $('#bashing_title').change(function(){ $(".selectInput").hide(); $("#"this.value).show(); }); }); </script> $(文档).ready(函数(){ $('#bashing_title')。更改(函数(){ $(“
<script>
$(document).ready(function(){
$('#bashing_title').change(function(){
$(".selectInput").hide();
$("#"this.value).show();
});
});
</script>
$(文档).ready(函数(){
$('#bashing_title')。更改(函数(){
$(“.selectInput”).hide();
$(“#”this.value).show();
});
});
假设在选择下拉列表时显示表单字段。但事实并非如此。我猜这可能是因为生成的html是
<option value="Title 1" value="1">Title 1</option>
标题1
但是如果我将上面的jquery代码更改为
<script>
$(document).ready(function(){
$('#bashing_title').change(function(){
$(".selectInput").hide();
$("#1").show();
});
});
</script>
$(文档).ready(函数(){
$('#bashing_title')。更改(函数(){
$(“.selectInput”).hide();
$(“#1”).show();
});
});
它起作用了。
但是我有大约10个不同的选项ID。我怎么修理它
我希望我的改变是有意义的
$("#"this.value).show();
到
并删除重复的值
属性,即change
<option value="Title 1" value="1">Title 1</option>
标题1
到
标题1
更改
$("#"this.value).show();
到
并删除重复的值
属性,即change
<option value="Title 1" value="1">Title 1</option>
标题1
到
标题1
你应该写
$("#"+this.value).show();
你应该写信
$("#"+this.value).show();
换成
$(“#”+this.value).show() 将其更改为
$(“#”+this.value).show() 是否可以像在#和此之间添加“+”一样简单。值是否可以像在#和此之间添加“+”一样简单。值您需要正确连接字符串:
$("#" + this.value).show();
此外,HTML标记中有一个错误,应该是这样的:
<option title="Title 1" value="1">Title 1</option>
标题1
与此相反:
<option value="Title 1" value="1">Title 1</option>
标题1
其中,您有两个值,这在您的案例中导致了问题。您需要正确地连接字符串:
$("#" + this.value).show();
此外,HTML标记中有一个错误,应该是这样的:
<option title="Title 1" value="1">Title 1</option>
标题1
与此相反:
<option value="Title 1" value="1">Title 1</option>
标题1
其中,您有两个值,这导致了您的问题。
此
不包含字符串,但包含一个对象:元素本身this
没有名为value
的属性,因此this.value
将不起作用。您必须访问通过this.options[this.selectedIndex].value
或通过jQuery$(this.val()
选择的子项。这应该是一个有效的解决方案:
$(document).ready(function(){
$('#bashing_title').change(function(){
$(".selectInput").hide();
var element = $(this).val();
$("#" + element).show();
});
});
此
不包含字符串,但包含一个对象:元素本身this
没有名为value
的属性,因此this.value
将不起作用。您必须访问通过this.options[this.selectedIndex].value
或通过jQuery$(this.val()
选择的子项。这应该是一个有效的解决方案:
$(document).ready(function(){
$('#bashing_title').change(function(){
$(".selectInput").hide();
var element = $(this).val();
$("#" + element).show();
});
});
嗯,有一个
+
。这将从语法错误变为字符串连接。我认为它必须是字符串thingtry console.log(This.value)的整数才能看到这个著名的值。不需要从整数转换为字符串。是的,现在可以了。请允许我再请你帮个忙。对于同一个问题,我如何使用jquery和我提供的手动文本/更新文本框?要更改文本框,请使用$('#myTextBoxId').val('newtext')代码>嗯,有一个+
。这将从语法错误变为字符串连接。我认为它必须是字符串thingtry console.log(This.value)的整数才能看到这个著名的值。不需要从整数转换为字符串。是的,现在可以了。请允许我再请你帮个忙。对于同一个问题,我如何使用jquery和我提供的手动文本/更新文本框?要更改文本框,请使用$('#myTextBoxId').val('newtext')代码>是的,但它不起作用。它不显示文本字段。我假设它与整数和字符串值有关。是的,但它不起作用。它不显示文本字段。我假设它与整数值和字符串值有关。对,但它就是这样生成的。如果是这种情况,您知道如何调整jquery脚本以接受标题/字符串,而不是instance选择一个原因
而不是0
?对,但它就是这样生成的。如果是这种情况,您知道如何调整jquery脚本以接受标题/字符串,而不是instance选择原因,而不是0
?