Проблема с добавлением формы в jQuery - PullRequest
0 голосов
/ 24 декабря 2009

Вот мой код:

$('.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. Так есть идеи, что случилось? Спасибо !!

1 Ответ

2 голосов
/ 24 декабря 2009

Я бы предложил всегда использовать скобки для ваших операторов if, но, тем не менее, ваша проблема здесь:

$leftwrap = $(this).parent();
$comment = $(leftwrap).parent();

Если вы собираетесь сделать это таким образом, оно должно быть:

$leftwrap = $(this).parent();
$comment = $leftwrap.parent();

Переменная $ не волшебная, она является частью имени вашей переменной, поэтому вы должны включить ее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...