我正在为网站重新设计,我需要为商店添加一个jQuery对话框。问题是,当我单击列表中的某个项目时,jQuery对话框会显示不同的内容。它显示了第一个项目,当我越来越多地按它时,它会从第一个到最后一个一个接一个地显示它们。例如(http://i.imgur.com/NSrVxiL.png)我单击第三个项目,它显示第一个项目。我再次点击第三个项目,它显示第二个项目。如果我点击它10次,它将显示第十项。我一直坚持这个问题很长一段时间,我似乎无法修复它。
显示项目的PHP代码(无论是谁写的都是一团糟):http://pastebin.com/jkuEMyCR 负责对话框的代码片段:
// SHOP ITEM LARGE
?><div class="section"><?php
print '<a href="';
?></div><?php
//This is how it opened it before
// print "javascript:regular('pages/item_large.php?shop=".$item->webshopMenu."&nr=".$item->id."');";
print '"><img class="save" style="margin-top:5px;margin-bottom:0; padding-bottom:0px;" border="0" src="'.$img.'" alt="'.$item->Naam.'" '.$image_size . "</a>";
print '<br><small>Artikelnr. : ' . $item->Artikelnr . '</small></div>' . "\n";
//This is how I'm trying to do it now
?>
<div style="display: none" class="dialog">
<?php
echo "<iframe src='pages/item_large.php?shop=" . $item->webshopMenu . "&nr=" . $item->id . "'" . "width='100%' height='100%' frameborder='0'></iframe>"
?>
</div>
JS代码:
(function() {
$('.save').click(function(event) {
event.preventDefault();
var dialog = $(this).closest('.section').find('.dialog');
$('.dialog:first').dialog({
modal: true,
scrollable: false,
draggable: false,
resizable: false,
width: 450,
height: 445
})
})
})();