2017-02-19 16:39:27 4801次浏览 4条回答 0 悬赏 50 金钱

各位路过的大神,博客系统的评论回复功能是如何实现的。
现在有一篇博客,在博客下面遍历出所有评论,具体问题如下:

  1. 假如博客页面是blog/view,在博客页面下面有一个评论表单,怎样通过activeform把表单内容传到comt/create
  2. 在评论后面有一个回复按钮,如何实现点击弹出回复的表单
    各位大神,如果有做过的,请一定要写详细,如果我的方法不对,请指正

最佳答案

  • 沐风待雨 发布于 2017-02-19 23:09 举报

    你看这个页面的html页面的代码

    <form id="w3" class="reply-form hidden" action="/question/2624" method="post">
    <input type="hidden" name="_csrf" value="VjlpSFVkQ3UeeCULBTwPEThINnEhPHNGJlUADj8RBTsfWhsQABYkJw==">        <div class="form-group field-answer-parent_id">
    <input type="hidden" id="answer-parent_id" class="parent_id" name="Answer[parent_id]">
    </div>        <div class="form-group field-answer-reply-content required">
    <textarea id="answer-reply-content" class="form-control" name="Answer[content]" aria-required="true"></textarea>
    <div class="help-block"></div>
    </div>        <div class="form-group">
                <button type="submit" class="btn btn-sm btn-primary">回复</button>        </div>
            </form>
    
    这里的action是提交到自身页面的,表单提交时你把action改成自己想提交的页面就行了, 不过在本页面的控制器上一样是可以处理的,不用非要提交到别的页面的控制器
    2 条回复
    回复于 2017-02-19 23:44 回复

    谢谢,我已经做出来了。在本页控制器写一个判断语句,表单就提交到本页。另外一个就是点击回复出现下拉的表单,在bootstrap里面有封装好的类,好像叫collapse.js,我已经学会调用了。

    回复于 2017-02-20 21:00 回复

    那就好,O(∩_∩)O哈哈~

  • 回答于 2017-02-19 16:50 举报

    你仔细研究下该站的代码就明白了,O(∩_∩)O

  • 回答于 2017-02-19 16:53 举报

    先隐藏一个表单,然后点击对应回复按钮时把回复的评论id传给这个表单,同时让这个隐藏的表单显示在你点击回复的地方的附近,就ok了,具体代码,你可以看这个页面的main.js 里的reply

    觉得很赞
  • 回答于 2017-02-19 16:55 举报

    就是这个

      //reply
        $(document).on('click', '.reply', function() {
            $('.reply-form').removeClass('hidden');
            $('.reply-form').appendTo($(this).parents('li > .media-body'));
            $('.reply-form').find('.parent_id').val($(this).parents('li').attr('data-key'));
            if($(this).parents('div.media').length > 0) {
                $('.reply-form').find('textarea').val('@' + $(this).closest('.media-body').find('[rel=author]').first().html() + ' ');
            } else {
                $('.reply-form').find('textarea').val('');
            }
    
    
    7 条回复
    回复于 2017-02-19 16:58 回复

    这段代码能看明白。还有一个问题是如何把blog/view下面的表单提交到comt/create

    回复于 2017-02-22 23:21 回复

    action="comt/create" 如果路由规则没配则是: action="index.php?r=comt/create"

    回复于 2017-08-17 07:21 回复
    回复于 2017-08-17 07:29 回复

    @raijinqqq a

    回复于 2018-10-10 15:03 回复

    dddddd

    回复于 2018-10-10 15:03 回复

    test

    回复于 2019-04-06 17:30 回复

    11

您需要登录后才可以回答。登录 | 立即注册
raijin
总监

raijin 安徽合肥

注册时间:2016-03-13
最后登录:2022-09-28
在线时长:75小时44分
  • 粉丝3
  • 金钱1880
  • 威望0
  • 积分2630

热门问题