我有一个简单的脚本,应该在 ajax 调用成功后删除 div:
$ ->
$('body').on 'click', '.add-comment', (event) ->
event.preventDefault()
body = $('#body_comment')
target = event.target
$.ajax
method: 'POST'
url: '/comments/create'
data:
body: body
success: (data) ->
target.remove()
error: (data) ->
# nothing here
如果我这样做:
console.log(target)
在成功 block 中,它显示了正确的 html div,但是当我执行 target.remove() 或 target.hide() 时没有任何反应
我哪里错了?
PS:我也尝试过使用 $(target).remove() ,但没有成功。 新代码:
$('body').on 'click', '.add-comment', (event) ->
event.preventDefault()
body = $('#body_comment')
target = event.target
$.ajax
method: 'POST'
url: '/comments/create'
data:
body: body
success: (data) ->
$(target).remove()
error: (data) ->
# nothing here
PPS:好的,我发现这与我的另一个脚本有冲突...抱歉,大家!
最佳答案
应该是
$(target).remove();
event.target
是 DOMElement。为了使用 jQuery 方法,您应该将其转换为 jQuery instance ,但将其包装到 $
函数中。
关于javascript - ajax成功后删除div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27235790/