在div中显示表单onclick

时间:2013-09-19 20:26:52

标签: jquery

感谢阅读。

我有评论列表,每条评论都有回复链接。当您点击链接时,应显示该单个评论的表单。

我很困惑。我写了这个jquery,但我知道它甚至没有意义。

  <script>
     $('.reply-comment').click(function(){

    var CommentID = $(this).attr('id');

    $(this).hide();
    $('.reply-comment-form').show( function(){
        $('.reply-comment-form-'+CommentID).html();
    });

    return false;
});
</script>

这是表格

    <div class="reply-comment-form well">';
     <form name="reply-form" id="reply-form" method="POST">
      <textarea name="Comment" rows="6" class="span10"></textarea> <br />
      <input type="submit" class="btn btn-primary replycommentsubmitbutton" value="Yanitla" />
     </form>
    </div> 

我在要显示的表单的每个评论下添加了一个范围

<div>
      comments text etc etc...
</div>
   <a href="" class="reply-comment" id="<?php $v['CommentID'] ?>"> Reply </a>
   <span id="reply-fomment-form-<?php $v['CommentsID'] ?>"></span>

那么,我如何使用show()函数和html()函数,还是有另一种方法呢?

你能帮帮我吗?感谢。

2 个答案:

答案 0 :(得分:3)

生成所有表单并隐藏这些表单,例如

<强> HTML:

<div>comments text etc etc...</div>
<a href="" class="reply-comment" id="<?php $v['CommentID'] ?>"> Reply </a>
<form class="reply-form">
    <input />
    <input type="submit" />
</form>
<br />
<div>comments text etc etc...</div>
<a href="" class="reply-comment" id="<?php $v['CommentID'] ?>"> Reply </a>
<form class="reply-form">
    <input />
    <input type="submit" />
</form>

<强> CSS:

.reply-form{ display:none; }

<强> JS:

$(function(){
    $('.reply-comment').on('click', function(e){
        e.preventDefault();
        $(this).next('.reply-form').show();
    });
});

DEMO. Updated Demo using OP's markup.

答案 1 :(得分:1)

使用相对选择器并忘记整个ID事物。

$('.reply-comment').click(function(){
   $(this).next('.reply-comment-form').show()
})