Javascript JQuery:.dialog()不适用于.classe选择器的下一个元素
我使用一个php while循环生成一些具有轻量级描述的项。 每个项目都有相同的类,前面都有它的图像 目标是在单击相应图像时打开一个包含项目描述的对话框 这就是我所做的: 生成包含所有图片的所有项目:Javascript JQuery:.dialog()不适用于.classe选择器的下一个元素,javascript,php,jquery,jquery-ui,Javascript,Php,Jquery,Jquery Ui,我使用一个php while循环生成一些具有轻量级描述的项。 每个项目都有相同的类,前面都有它的图像 目标是在单击相应图像时打开一个包含项目描述的对话框 这就是我所做的: 生成包含所有图片的所有项目: while($result = $req->fetch()) {?> <img src="./css/images/icon/<?=$result['category']?>/<?=$result['rarity'
while($result = $req->fetch()) {?>
<img src="./css/images/icon/<?=$result['category']?>/<?=$result['rarity']?>" alt="<?=$result['object']?>" title="<?=$result['object']?>" class="obj">
<p class="descr_obj">
Name : <?=$result['objet']?><br><br>
Rarity : <?=str_replace(".png", "", $result['rarity'])?><br><br>
Description :<br>
<?=$result['description']?>
</p>
<?php }?>
但是没有显示任何内容,控制台也没有显示任何错误
你能帮帮我吗?
提前感谢您。两个问题。主要的一点是,你从来没有告诉对话框打开(通过使用
.dialog(“open”)
)。第二点是,你将得到大量的对话框-每个img
都有一个对话框,因为你在重复这个段落。descr\u obj
类的每个实例都会有自己的对话框
试试这样(我的php很烂,所以可能是错的):
名称:
稀有性:
说明:
$(".descr_obj").dialog({
autoOpen: false
})
$(".obj").click(function(){
text = $(this).next(".descr_obj").text();
$(text).dialog("open");
});
while($result = $req->fetch()) {?>
<img src="./css/images/icon/<?=$result['category']?>/<?=$result['rarity']?>"
alt="<?=$result['object']?>"
title="<?=$result['object']?>"
class="obj"
data-name="<?=$result['objet']?>"
data-rarity="<?=str_replace(".png", "", $result['rarity'])?>"
data-desc="<?=$result['description']?>">
<?php }?>
<p class="descr_obj">
Name : <span class="name"></span><br><br>
Rarity : <span class="rarity"></span><br><br>
Description :<br>
<span class="desc"></span>
</p>