如果我有5个div
<div id="" class=""> Div11 </div>
<div id="" class=""> Div12 </div>
<div id="" class=""> Div13 </div>
<div id="" class=""> Div14 </div>
<div id="" class=""> Div15 </div>
和jquery代码一样:
单击某个div可隐藏它。
现在当我在jquery $("DIV").click(function(){ $("DIV").hide(); });
我把它命名为DIV所以我可以问你这些问题:
id="div1"
和第二个id="div2"
,直到最后,我怎样才能将查询连接到每一个?我试过但它只在一个div上工作......就像更好的问题:
如果我在页面加载时将一些textarea设置为jquery中的hide。在div上点击它需要显示...我的脚本只能在其他人的1 div上工作,并且textarea不是应该隐藏的。
更新:
我的真实情况是我有php文件和mysql数据库
mysql数据库包含名字,id和姓氏 它有10个名字
在我的php文件中我有:
$sql = "SELECT * FROM names";
$result = $con->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$fname = $row['firstname'];
$id = $row['id'];
echo $fname."
<textarea id='div".$id."' class='divsss'>Enter last name:</textarea>
";
}
}
然后我有jquery代码:
<script type="text/javascript">
$(document).ready(function() {
$('.divsss').keypress(function(event) {
var key = (event.keyCode ? event.keyCode : event.which);
if (key == 13) {
var lname = $('.divsss').val();
var forid = '<?php echo $id; ?>';
$.ajax({
method: "POST",
url: "intodb.php",
data: {ln: lname, fi: forid},
success: function(status) {
alert("lname: " + lname + "for id: " + forid);
$('.divsss').val('');
}
});
};
});
});
</script>
它不会工作,但是当我将它更改为具有相同id的ID时,它只对第一个输出它的值为0或1.但是当我尝试按类时它不起作用。 在intodb.php里面我只是更新了DB ...
答案 0 :(得分:0)
$("DIV").on("click", function(){ $(this).hide(); });
使用 此 ,您将隐藏作为该函数调用者的div。
答案 1 :(得分:0)
当您设置ID
(标识)时,如其名称所示,对于一个div,仅。
如果你想在多个div中使用css属性,那么你必须使用一个类,在你的情况下你可以使用以下代码隐藏它们:
$(".hideDiv").click(function(){ $(this).hide(); });
假设您在所有div中使用.hideDiv
类,如下所示:
<div id="div01" class="hideDiv"> Div11 </div>
<div id="div02" class="hideDiv"> Div12 </div>
...
等等。
答案 2 :(得分:0)
关于您的问题
ID或CLASS是否会与所有其他人和 另一个不同。
根据定义,id
属性应该是唯一的,可用于标识DOM中的特定元素。另一方面,class
属性可以共享我的多个元素,通常用于为元素设置样式。
如果ID不同,如果我有第一个div id =&#34; div1&#34;第二个 ID =&#34; DIV2&#34;直到最后,我如何将查询连接到每一个 他们?
您可以通过多种方式完成此任务。 jQuery支持各种基于属性的选择器,因此您可以轻松地定位每个具有id
的元素&#34; start-with div&#34;如下所示:
// This would hide any elements that have an ID that starts with "div"
$('[id^="div"]').hide();
同样,你也可以将CSS类应用于所有这些元素以对它们进行分组并以这种方式选择它们:
<div class='your-class'></div>
<div class='your-class'></div>
<div class='your-class'></div>
以及:
// This would hide any elements that have the class "your-class"
$('.your-class').hide();
关于您的代码
关于您的实际代码,您需要确保在keypress
事件中正确确定您要执行的操作:
// When a key is pressed within this element (presumably a <textarea> or <input>
$('.divsss').keypress(function(event) {
// Store a reference to this for your AJAX callback
var _self = $(this);
// Get the key
var key = (event.keyCode ? event.keyCode : event.which);
// If it was enter
if (key == 13) {
// Get the last name (of this element), using $(this)
var lname = $(this).val();
// Get an id predefined by your server-side PHP
var forid = '<?php echo $id; ?>';
// Make your AJAX post
$.post('intodb.php',{ln: lname, fi: forid}, function(status){
alert("lname: " + lname + "for id: " + forid);
_self.val('');
});
});
答案 3 :(得分:-1)
使用class和$('.class')
作为jQuery标识符..
在jQuery中,$('.class')
用于标识类,$('#ID')
标识具有特定ID的元素。两者都有它们的用途..但在这种情况下.. class
就是你想要的。
<div id="div1" class="div"> Div11 </div>
<div id="div2" class="div"> Div12 </div>
<div id="div3" class="div"> Div13 </div>
<div id="div4" class="div"> Div14 </div>
<div id="div5" class="div"> Div15 </div>
$(".div").click(function(){ $(".div").hide(); });
相反 - ID
总是唯一的标识符......保持它们的独特性。 Class
es旨在“分类”对象组...