2012-01-29 236 views
0

我想使用JQuery UI对话框,但我不能。当我点击不同的名称时,它每次都加载相同的页面。问题是有太多的隐藏输入,所以我只是得到第一个值。将参数传递给JQuery函数

我该如何动态地做到这一点?

PHP

while($s=mysql_fetch_array($a)) { 
    $name=$["name"]; 
    <input type="hidden" class="hidden" value="<?php echo $name; ?>" /> 
    <td class="dialog"><?php echo $name; ?></td> 
} 

JS

$('.dialog').click(function(){ 

    variable=$('.hidden').val(); 

    dialog1.load('page.php?do='+variable.dialog('open'); 

}); 

基本上我想用jQuery做到这一点:

<td><a href="page.php?do=<?php echo $name; ?>" > Go</a></td> 
+0

使您的代码格式正确并分为PHP和JS部分(因为如果我理解正确,它们是分开的)。 – Tadeck 2012-01-29 03:42:34

回答

0

你不能有一个表,里面什么,在单元格之外发言:,所以你必须把你的inputtd

<td class="dialog"> 
    <input type="hidden" value="<?php echo $name; ?>" /> 
    <?php echo $name; ?> 
</td> 

由于输入是在细胞内,你可以很容易地找到它不设置它的类:

$('.dialog').click(function(){ 
    var variable = $('input', this).val(); 
    dialog1.load('page.php?do=' + variable).dialog('open'); 
}); 

(我不知道函数内部的第二行。它错过了一个括号,所以我添加了一个它看起来像是需要的地方。)