您的位置:首页 > 编程语言 > Ruby

ruby on rails 局部刷新

2015-04-11 04:05 274 查看
假设现在有一组ruby on rails文件,有example_controller.rb,在view中有example文件,里边有一个index.html.erb,有一个_html_code.html.erb,里边是需要刷新的html代码

index.html.erb中的代码是:

.....
<div id='refresh-part'>
<%= render :partial => 'html_code', :locals => {var: @vars}%>
</div>
.....
<script>
$(".submmit-btn").click(function () {
$.ajax({
type: "POST",
url: "/example",
data: {},
dataType: 'json',
success: function(date){
$('#refresh-part').html(date.htmls);
}
});
});
</script>


以上代码的js部分是提交一个请求给后台,成功后修改refresh-part部分的代码

那么现在再看controller部分:

def index
@vars = some_new_value
render :json => {
:htmls => render_to_string({
:partial => "html_code",
:locals => {var: @vars}
})
}
return
end


以上代码将变化的部分值传给html_code部分,然后将html_code部分的代码都转换为string传回给当前ajax请求,最后post到页面上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息