当点击一个复选框时,我似乎很难显示div,问题非常简单,但我似乎找不到合适的jquery解决方案来解决这个问题,尽管我觉得我非常接近。
$html=
'<form action="contacted.php" method="POST">
<input type = "hidden" name = "contact" class = "hidden" value = "'.$ip.'">
<input type="checkbox" id="contact'.$ip.'" value = "'.$ip.'" onclick="show()"/>
<div class="hide" style="
display:none;
border:3px
solid black;
background-color:grey;
color:white;
width:200px;
position:absolute;
left:40%;
top:20%;
-moz-border-radius: 15px;
border-radius: 15px;
padding:4px;
z-index:1000;
Width:500px;
">
<textarea name = "notes" style = "" > Let\'s get some notes about that...</textarea>
<input type="submit" value="YES"/>
<input type="button" value="NO" onclick="hide()">
</div>
</form>';
这是for循环,$ip
是标识符。但它很直接。
我试过的jquery
function show(){
$(this).parent().find('.hide').css("display","block")
}
我试图在单击复选框时显示div隐藏(这在同一页面上多次发生)并且我无法从jquery文档中拼凑出正确的组合。有任何想法吗?我肯定这会很简单,我更愿意除了javascript建议:)
答案 0 :(得分:1)
将类添加到这样的输入中并尝试一下
<input type="checkbox" id="contact'.$ip.'" class="contact_click" value="'.$ip.'" onclick="show()"/>
$('.contact_click').on('click',function(){
$(this).closest('div').css('css','block');
});
答案 1 :(得分:0)
试试这个
更改
<input type="checkbox" id="contact'.$ip.'" value = "'.$ip.'" onclick="show()"/>
到
<input type="checkbox" id="contact'.$ip.'" value = "'.$ip.'" onclick="show(this)"/>
和脚本为
function show()
{
this.parent().find('.hide').css("display","block");
}
答案 2 :(得分:0)
将点击的元素传递到您的函数中
<input type="checkbox" id="contact'.$ip.'" value = "'.$ip.'" onclick="show(this)"/>
和
function show(element){
$(element).parent().find('.hide').css("display","block");
}
答案 3 :(得分:0)
你甚至不需要该类复选框是div的直接子项。
$(this).parent().show(0);
只需确保将点击处理程序绑定到复选框,这肯定会有效。
只是为了确保您绑定事件,请在单击复选框
时尝试此操作 function test(){
var test = $(this).parent().attr('class');
alert(test);
}
你应该隐藏起来。所以,如果你得到隐藏它正确绑定