JQuery实现选择特定楼层回复
JQuery实现选择特定楼层回复
需求:
一个论坛里面的小功能,除了回复帖子之外,也能够回复帖子以下的回复。详细实现细节:
- 每个回复有一个“回复”按钮,点击按钮实现:
- 在form表单里面加入一个input元素,内容是须要回复的楼层数,这样post过去之后才干在后台处理;
- 在回复内容的textarea里面加入文字“回复x楼:”
接下来就是详细实现了。无疑仅仅能用JS_(:з」∠)_,又是每次到了这时候才暂时各种百度怎么用…
获取楼层数
在button上绑定了一个function
<button class="btn btn-primary" onclick="cause_reply(this)">回复</button>
<p>{{reply.floor_num}}楼 {{reply.author.username}} at {{reply.time}}</p>
最開始我没有放this在里面,仅仅是写了个方法。后来发现这种话不同的楼层结构都是相似的。没有办法获取到楼层数,仅仅能用this确定button的详细位置,然后从button找到楼层数。
实际上仅仅用了一行,思路是获取button的兄弟元素p然后截取字符串,用原生js的时候一直出问题,nextSibling获取到的是[object text],然后这个text的内容又显示不出来,后来百度了半天可能是firefox的原因,把button后面的换行也作为一个元素,于是就获取不到内容,最后用jquery攻克了。
var reply_floor=$(obj).next().text().substr(0,1);
form的结构:
<form class="form-horizontal panel col-md-10 col-md-offset-1 container" method="POST" action="/forum/post/">{% csrf_token %}
<div class="form-group col-md-12">
<label class="control-label" for="exampleContent"></label>
<br/><br/>
<textarea rows="6" name="content" class="form-control" id="exampleContent" placeholder=""></textarea>
</div>
<div class="form-group col-md-4" id="post_field">
<input type="hidden" name="post_type" value="post_reply"/>
<input type="hidden" name="post_id" value="{{post.id}}"/>
<input type="submit" class="btn btn-lg btn-primary" value="回帖"/>
</div>
</form>
加入文字内容
相同一行解决:
$("textarea").append("回复"+reply_floor+"楼:");
添加input元素
var new_inp=document.createElement("input");
new_inp.setAttribute("type", "hidden");
new_inp.setAttribute("id", "reply_id");
new_inp.setAttribute("name", "reply_id");
new_inp.setAttribute("value", reply_floor);
$('#post_field').append(new_inp);
差点儿相同就是这样。然后另一个就是。假设先点击过一个楼层的回复,又点击了另外一个楼层。对应的前一个就要清除掉,改成最后操作的楼层。所以加了一个推断过程。最后所有代码是这样:
function cause_reply(obj){
if($("#reply_id").length>0){
$("#reply_id").remove();
$("textarea").empty();
}
var new_inp=document.createElement("input");
var reply_floor=$(obj).next().text().substr(0,1);
new_inp.setAttribute("type", "hidden");
new_inp.setAttribute("id", "reply_id");
new_inp.setAttribute("name", "reply_id");
new_inp.setAttribute("value", reply_floor);
$('#post_field').append(new_inp);
$("textarea").append("回复"+reply_floor+"楼:");
}
JQuery实现选择特定楼层回复的更多相关文章
- JQUERY 模糊选择
JQUERY 模糊选择 [属性名称] 匹配包含给定属性的元素 [att=value] 匹配包含给定属性的元素 [att*=value] ...
- jQuery模糊选择
属性字头选择器(Attribute Contains Prefix Selector) jQuery 属性字头选择器的使用格式是 jQuery(‘[attribute|=value]‘) ,例如 jQ ...
- jQuery中获取特定顺序子元素(子元素种类不定)的方法
提出问题:只已知父元素和父元素中子元素的次序,怎么通过jQuery方法获得该元素? <p>第一部分:</p> <ul> <li>1</li> ...
- 贴近用户体验的jQuery日期选择插件
分享一款贴近用户体验的jQuery日期选择插件.这是一款双日历jQuery日期选择时间插件pickerDateRange.效果图如下: 在线预览 源码下载 var dateRange = new ...
- jquery中选择checkbox拼接成字符串,然后到后台拆分取值
jquery中选择checkbox拼接成字符串,然后到后台拆分取值 js中的代码 $("#btn").click(function(){ var chenked=$("i ...
- 基于jQuery商品分类选择提交表单代码
分享一款基于jQuery商品分类选择提交表单代码.这是一款基于jQuery实现的商品信息选择列表表单提交代码. 在线预览 源码下载 实现的代码: <div class="yList ...
- jQuery应用之(二)使用jQuery管理选择结果(荐)
使用jQuery选择出来的元素与数组非常类似,可以通过jQuery提供的一系列方法对其进行处理,包括长度.查找某个元素,截取某个段落等. 1.获取元素的个数. 在jQuery中可以通过size()方法 ...
- jquery取消选择select下拉框
有三个select下拉框一个大类,两个小类隐藏,需要在选择大类的时候,小类显示同时清除另外的小类选择的项这需求有点儿.......... 下面是三个select: <select name=&q ...
- jquery input选择弹框
index.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pag ...
随机推荐
- Spring事务为什么不会自动回滚?Spring事务怎样才会自动回滚?事务自动回滚条件及手动回滚
原文:https://blog.csdn.net/qq_32331073/article/details/76508147 更多Spring事务问题请访问链接:Spring事务回滚问题疑难详解 在此, ...
- JVM:如何分析线程堆栈
英文原文:JVM: How to analyze Thread Dump 在这篇文章里我将教会你如何分析JVM的线程堆栈以及如何从堆栈信息中找出问题的根因.在我看来线程堆栈分析技术是Java EE产品 ...
- DCI:DCI学习总结
备注 之前把DCI的Role和四色原型的Role给弄混了,本文也不会比较这两种Role的区别(后面有机会再说),这里简单的记录一下对DCI的理解. 参考文章:http://www.cnblogs.co ...
- N个富文本编辑器/基于Web的HTML编辑器
转自:http://www.cnblogs.com/lingyuan/archive/2010/11/15/1877447.html 基于WEB的HTML 编辑器,WYSIWYG所见即所得的编辑器,或 ...
- 在Windows上以服务方式运行 MSOPenTech/Redis
ServiceStack.Redis 使用教程里 提到Redis最好还是部署到Linux下去,Windows只是用来做开发环境,现在这个命题发生改变了,在Windows上也可以部署生产环境的 Redi ...
- Qt控件中的属性sizePolicy说明
1. Fixed: 大小不能改变 2. Minimum: 已经是最小, 不能再被缩小, 但能放大. 3. Maximum: 已经是最大, 不能再被放大, 但能缩小. 4. Preferred: 控件 ...
- Java编程兵书
<Java编程兵书> 基本信息 作者: 桂颖 任昱衡 丛书名: 程序员藏经阁 出版社:电子工业出版社 ISBN:9787121207419 上架时间:2013-8-26 出版日期:2013 ...
- iOS:文件归档和解归档的详解和使用
文件归档和解归档: 用途: 所谓文件归档,就是把需要存储的对象数据存储到沙盒的Documents目录下的文件中,即存储到了磁盘上,实现数据的持久性存储和备份.解归档,就是从磁盘上读取该文件下的数据,用 ...
- Orchard运用 - 在页面每篇随笔添加编辑链接
今天继续捣鼓Orchard系统,在此分享一个小技巧,如何在页面每个随笔添加编辑链接,这样方便管理员直接点击进去编辑内容.是的,只对管理员可见. 话说这一个特性一开始是默认启用并集成在核心实现中的,后来 ...
- JavaScript 你不知道的事 -- 关于函数
接上篇Javascript 你不知道的事,直接条列了: 每个函数创建时默认带有一个prototype属性,其中包含一个constructor属性,和一个指向Object对象的隐藏属性__proto__ ...