这是我的HTML:
calc.id = this.stringID;
这是我的JS(Jquery):
<div class="dropdown-text" id="dropdownopen" onclick="dropdownopen(0)">
<div class="inside">+ Show Content</div>
</div>
<div class="dropdown" id="dropdownnum(0)">
<div class="inner">INSERT DROPDOWN CONTENT IN HERE</div>
</div>
#dropdownnum(0)div是display:none;默认情况下,这应该可行,但我收到错误:
未捕获错误:语法错误,无法识别的表达式:#dropdownnum(0)。
答案 0 :(得分:1)
(和)需要转义。
function dropdownopen(param) {
$('#dropdownnum\\('+param+'\\)').fadeOut(300);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="dropdown-text" id="dropdownopen" onclick="dropdownopen(0)">
<div class="inside">+ Show Content</div>
</div>
<div class="dropdown" id="dropdownnum(0)">
<div class="inner">INSERT DROPDOWN CONTENT IN HERE</div>
</div>
但是你真的应该为你的id选择一个不同的命名方案,所以你不必这样做。
答案 1 :(得分:0)
您不能在(
的值中包含)
和id
等特殊字符。请尝试将您的代码更改为:
<div class="dropdown-text" id="dropdownopen" onclick="dropdownopen(0)">
<div class="inside">+ Show Content</div>
</div>
<div class="dropdown" id="dropdownnum-0">
<div class="inner">INSERT DROPDOWN CONTENT IN HERE</div>
</div>
function dropdownopen(param) {
$('#dropdownnum-'+param).fadeOut(300);
}