使用jquery重新渲染页面
Re-render a page using jquery
在react中,我可以通过传递来自控制器的结果轻松地重新呈现视图。我不希望在这个阶段使用React,想知道是否可以使用JQuery?
我在页面上有几个对象,当点击时,我应该看到它的内容。点击另一个对象,我看到它的内容等等。理解吗?这个运球给了我灵感。
我可能做得不对,但这就是我所拥有的:
控制器:
def index
selected_contract = params[:selected_contract] || current_user.contracts.last.id
@contracts = current_user.contracts.order(created_at: :desc).all
@selected_contract = current_user.contracts.find_by(id: selected_contract)
end
视图:
<% @contracts.each do |contract| %>
<button class="ui button test" id="<%=contract.id%>"><%=contract.name%></button>
<% end %>
......................................
When clicked, show its content
....................................
<%= @selected_contract.name %>
JS:
$( ".ui.button.test" ).click(function(e) {
let { id } = this
console.log(id)
$.ajax({
url: `/url/${id}`,
type: 'POST',
success: function(result) {
//$('#listview').redraw()
console.log('success')
}
});
});
路由设置正确,所以我得到控制器中的参数很好。是否有一个重新渲染视图,就像渲染一个道具在React的jquery?我这样做对吗?
如果你正在使用jquery listview,这应该可以工作。
$( "#listview" ).listview( "refresh" );
参考https://api.jquerymobile.com/listview/method-refresh
或者因为它是rails,你也可以在服务器端重新加载或渲染部分视图
相关文章:
- 如何强制对模态进行新渲染
- 用新的jQuery和jQuery ui替代.tabs(“添加”、链接、标题)
- 2秒后删除新的jQuery预处理节点
- 通过 Backbone View 渲染 jQuery 对象
- 在新类 jQuery 上启用可拖动
- 如何修复javascript在较新的jquery库上运行,但在较旧版本的jquery库上运行
- 为什么 $(':radio').change() 在新的 jQuery 中停止工作
- css+jQuery样式.css切换器,用于新的jQuery版本
- 创建新的jQuery全局对象
- 将CSS设置添加到新的JQuery插件中
- 非常新的JQuery初学者-放大弹出窗口
- 关注标签触发模糊事件后新渲染的文本输入
- 动画高度:自动与较新的jQuery
- 循环遍历集合中的jQuery对象,而不为每次迭代初始化一个新的jQuery对象
- 在新的JQuery对象内部迭代
- (新的jquery)为什么我的chrome扩展工作在任何东西,但reddit
- 在img加载打开新标签Jquery不点击
- 替换span与新的数据,但新的jquery调用不工作
- 在警告窗口新行jQuery jqXHR responseText
- 动态添加一个新的jQuery滑块会导致旧的滑块不起作用