Javascript 为什么我的页面在发布评论后不重新加载视图?

Javascript 为什么我的页面在发布评论后不重新加载视图?,javascript,ruby-on-rails,ruby,Javascript,Ruby On Rails,Ruby,在创建reddit克隆时学习ruby on rails,当我尝试发布注释时,我的控制台返回注释已创建,但没有重新加载页面视图,并且返回一个错误消息 Uncaught TypeError: Cannot set property 'innerHTML' of null at <anonymous>:3:52 at processResponse (rails-ujs.js:283) at rails-ujs.js:196 at XMLHttpRequest.xhr.onread

在创建reddit克隆时学习ruby on rails,当我尝试发布注释时,我的控制台返回注释已创建,但没有重新加载页面视图,并且返回一个错误消息

Uncaught TypeError: Cannot set property 'innerHTML' of null

at <anonymous>:3:52

at processResponse (rails-ujs.js:283)

at rails-ujs.js:196

at XMLHttpRequest.xhr.onreadystatechange (rails-ujs.js:264)
Uncaught TypeError:无法将属性“innerHTML”设置为null

中,您犯了一个选择器输入错误,因此更改
注释/create.js.erb
,如下所示:

document.getElementById("post_comments").innerHTML = "<%= escape_javascript(render partial: 'posts/comments', locals: {comments: @comments})%>"
document.querySelector("#new_comment textarea").value = ""

document.getElementById(“post_comments”).innerHTML=“”
document.querySelector(“#new#U comment textarea”).value=“”

这里的区别是
post_comments
而不是
post comments

您犯了一个选择器输入错误,所以像这样更改
comment/create.js.erb
,应该可以:

document.getElementById("post_comments").innerHTML = "<%= escape_javascript(render partial: 'posts/comments', locals: {comments: @comments})%>"
document.querySelector("#new_comment textarea").value = ""

document.getElementById(“post_comments”).innerHTML=“”
document.querySelector(“#new#U comment textarea”).value=“”
这里的区别是
post_comments
而不是
post comments

document.getElementById("post_comments").innerHTML = "<%= escape_javascript(render partial: 'posts/comments', locals: {comments: @comments})%>"
document.querySelector("#new_comment textarea").value = ""