这是我的代码:
$('.reply').click(function() {
$leftwrap = $(this).parent();
$comment = $(leftwrap).parent();
$id = $comment.attr('id');
if($(this).siblings('.reply-form').length == 0) { //check whether or not the form as been initiated yet
$(this).parent().append('<?php $replytimestamp = strtotime("now"); ?>
<form class="reply-form" action="/scripts/reply-process.php" method="post">
<input type="hidden" name="replytimestamp" value="<?php echo $replytimestamp; ?>">
<input type="hidden" name="replyto" value="'+ $id +'">
<label for="name" class="reply-label">Name</label>
<input type="text" name="name" class="reply-input">
<label for="message" class="reply-label">Reply</label>
<textarea name="message"class="reply-ta"></textarea>
<input class="reply-submit" type="submit" name="submit" value="submit" />
</form>');
$(this).siblings('.reply-form').hide();
$(this).siblings('.reply-form').slideDown();
} else $(this).siblings('.reply-form').slideToggle(); //if it is, toggle it
});
当我点击“.reply”时,没有任何事情发生,没有幻灯片,没有。我在Firebug中找不到任何东西。那么任何想法是什么了?谢谢!
答案 0 :(得分:2)
我建议总是在if语句中使用括号,但无论如何,问题出在这里:
$leftwrap = $(this).parent();
$comment = $(leftwrap).parent();
如果你打算这样做,那就需要:
$leftwrap = $(this).parent();
$comment = $leftwrap.parent();
$
变量不是魔术,它是变量名的一部分,所以你必须包含它。