名为单选按钮的jQuery变量无法显示消息

时间:2011-09-14 02:21:08

标签: jquery radio-button show-hide

我有一个DIV #Message_PHPVARABLE,当选择分配给这篇文章的单选按钮时,它应该出现在帖子的底部。但是,它会对Post_1工作正常,但是当我为Post_2选择一个选项时,Post_1的选项会更改,而Message_1会显示新的选择,而不是在Message_2中显示Post_2选项...任何帮助?单选按钮提供的选项是Like和Dislike。

$data = mysql_query("SELECT * FROM Test");
$counter = 1;

while($row = mysql_fetch_array( $data )){
?>
<script type="text/javascript">
    $(document).ready(function() {
        $("input[name*='like_<?php $counter; ?>']").click(function() {
            var defaultValue = $("label[for*='" + this.id + "']").html();
            var defaultm = "You have chosen : ";
            $('#Message_<?php $counter; ?>').html('').html(defaultm + defaultValue + ' | Value is : ' + $(this).val());
        });

    });
</script>

<div id="post_<?php $counter; ?>" class="post">
    <b><?php echo $row['Title']; ?></b><br>
    Expires: <?php echo $row['Exp']; ?><br>
<ul id="listM"></ul>
<div class="left"><p><input id="like_<?php $counter; ?>" type="radio" name="like_<?php $counter; ?>" value="1" />
<label for="like_<?php $counter; ?>">Like</label></p></div>
<div class="right"><p><input id="dislike_<?php $counter; ?>" type="radio" name="like_<?php $counter; ?>" value="0" />
<label for="dislike_<?php $counter; ?>">Dislike</label></p></div>
<hr />
</div>
<div id="Message_<?php $counter; ?>"></div>

<?php 
$counter += 1;
} 
?>

如果我对所有内容进行硬编码(删除$ counter)那么它工作正常但显然,要显示MySQL中有无限数量的潜在行,我必须使用变量...

1 个答案:

答案 0 :(得分:0)

你的PHP有问题(除非你输入的帖子不正确)

要打印$counter,您需要echo它。只需输入<?php $counter; ?>,就不会将值放入HTML中。您需要使用<?php echo $counter;?><?=$counter;?>作为快捷方式。