我想在Ruby中建立动态下拉上rhodes.There基本上都是我的屏幕上的两个下拉列表,我使用AJAX根据第一dropdown..I上午选择的值从数据库中获取第二个下拉值新手红宝石,不知道如何在红宝石罗得岛使用AJAX的语法..
JavaScript代码我使用...
$.post("/app/Settings/dropdown",
{ value:a },
function(data){
alert(data);
});
-----部分控制器代码
在这里输入代码
def dropdown
@a = @params['value']
puts @a
if @a.eql?"Auto"
mystring="auto1|auto2|"
else
mystring="personal1|personal2|"
end
end
我可以通过Ajax调用发送到controller..My问题的任何参数是如何从控制器发回的数据功能在Ajax调用,这样我可以利用这些信息来创建动态dropdown..I想送这个了mystring起作用(数据)??
在罗得岛,控制器动作只能使其他操作或返回由泛音的字符串。 因此,为了填充使用AJAX下拉,你必须渲染,这将作为响应Ajax调用返回的动作相关的视图。
控制器“下拉”作用: -
def dropdown
@a = @params['value']
if @a.eql?"Auto"
@optionList[:auto1]="auto1"
@optionList[:auto2]="auto2"
else
@optionList[:personal1]="personal1"
@optionList[:personal2]="personal2"
end
render :action => "dropdown"
end
'dropdown.erb' 视图: -
<% optionList.each do |key, value| %>
<option value="<%= key %>"><%= value %></option>
<% end %>
AJAX调用: -
$.post(
"/app/Settings/dropdown",
{ value:a },
function(data){
data = data.replace("<div>","");
data = data.replace("</div>","");
alert(data);
}
});
确保您更换div标签在Ajax响应,因为罗德自动包围使用div标签AJAX响应。