将.data放入此对象
Putting .data to .this objects
我在facebook上有一个类似wall的东西。每个帖子下面都有一些评论。我想做的是编辑评论选项。它用textarea表单替换当前的评论,并在accept之后显示新的评论。这个按钮不太好用。它应该是动态的(工作不刷新网站)。然而,我遇到了一些困难。编辑链接在一些其他评论下打开文本区域,或者在文本区域框中显示第一条评论(新评论应该出现…)我现在要做的是把。data()钉到"this"按钮,它将包含新的评论文本,所以我将能够动态地读取它到打开的文本区。我不完全确定我在做什么,我不确定使用这个,但我希望你能帮助我,伙计们!警报显示"未知数据"。也许有更好的解决方案,不需要在js大师水平的技能?
<a href="#!" class="editButton" onClick="editComment({{$comment->h_id}}, `{{$comment->f_text}}`)">
<script>
function editComment(id, text){
var thisId = "#" + id;
$(thisId).replaceWith("<form class='newCommentForm'>'n'
<textarea id='newComment'>" + text + "</textarea>'n'
<input type='button' id='submit' value='save'>'n'
</form>");
$('#submit').click(function() {
var newComment = document.getElementById('newComment').value;
$.ajax({
type: 'get',
url: '/editcomment',
data: {newComment: newComment,
id: id},
success:function(){
$(".newCommentForm").replaceWith("<span id='" + id + "' class='limitedText shorter' style>" + newComment + "</span>");
$(".editButton", this).data("PinComment", "newComment");
alert($(".editButton", this).data("PinComment"));
},
error:function(){
alert('error');
}
});
});
}
</script>
在ajax调用中,this
不再引用DOM元素。
编辑:
首先将注释对象放入变量
中$thisComment = $(thisId);
然后改变:
$(".editButton", this)
为:
$(".editButton", $thisComment)
相关文章:
- 无法获取带有 .data(el,'dataname').sublev 的数据对象
- 在jquery data()对象上循环,并将值写入以键为变量名的变量中
- 为什么要使用 $.data() 而不是直接通过 JavaScript 设置对象
- 如何在 JavaScript 中访问 data.submit() 的 json 响应对象
- Javascript - 获取对象的属性并使用“data-id”打印在元素上
- jQuery .data 在使用 html jQuery 对象时不起作用
- 转换使用 data() 保存的字符串表单对象
- 尝试将 $scope.data 传递到 param 对象中,从控制器传递到 Angular 中的服务
- 从字符串创建深层对象,如“obj.obj1.obj2.data”
- 通过 data() 在 jQuery 对象上传递 DOM 元素的优点
- 在 data.feature 对象上添加工具提示,就像我们可以对标记所做的那样
- 通过$.ajaxGET发送jQuery$.data对象
- 在HTML文档中存储对象ID: ID vs data-id vs
- 将字符串解析为来自data属性的对象
- jQuery .data()替换嵌套对象'属性
- 如何访问在knockout中使用$data映射的对象
- 按值过滤.data()对象中的项
- 分配存储在jQuery.data()中的对象的单个键
- 将javascript变量传递给html对象"data-url"的属性
- 无法设置'data'属性'对象'标记.(只IE8)