我尝试通过点击两个不同的链接来显示和隐藏div。 (实际上我的页面有很多这些部分所以我必须给他们一个ID)。
我的html看起来像这样
<div id="meta-503d22ceaf32609515000003" class="answer-form">
<form action="..." method="...">
<p>
<textarea name=".."></textarea>
</p>
<p>
<input type="submit" value="..">
<a href="#" data-action="cancel" data-id="503526f7e8d08ecb0c000003">cancel</a>
</p>
</form>
</div>
<span class="content-nav">
<a href="#" data-action="open" data-id="503d22ceaf32609515000003">open form</a>
</span>
当我点击span
链接打开表单时,我有一个content-navigation
data-action=open
。这很好用。但是当我点击cancle时,它应该隐藏/关闭/滑动这个答案形式div。
这是我的jQuery-Javascript:
$(document).ready(function() {
$("a[data-action=open]").on('click', function(e) {
var id = $(this).data('id');
console.log($("div#meta-" + id));
$("div#meta-" + id).slideDown('slow');
});
$("a[data-action=cancel]").on('click', function(e) {
var id = $(this).data('id');
console.log(id);
console.log(e);
console.log($("#meta-" + id));
});
});
在第二个绑定点击方法中,它检索id但查询
$("#meta-"+id)
当同一个调用在第一个方法中找到某个东西时,在secound方法中找不到任何内容。
如何找到表单并关闭它?这是一个范围问题,因为取消调用(绑定)嵌套在表单中吗?
我在这里想念什么?
答案 0 :(得分:1)
如果我没有弄错,取消按钮的ID与div Id
不同