2012-08-27 97 views
0

在我的rails应用程序中,我有一个从模型生成的选择标记(用户可以选择不同的国家/地区)。我想更新当用户选择不同选项时可以在相同视图中找到的text_field(用于国家电话代码)的值。我需要从模型中提取需要放置在text_field中的值(country_code),并基于用户选择的选项(国家/地区)。我试图通过几种不同的方式来解决这个问题,但我似乎陷入了困境。请帮忙。当html选择/选项更改输入字段需要更新时

View: 
    <%= f.label :country %> 
    <%= select("user", :country, Country.all.collect{ |c| c[0] }, {prompt: "-- Select Country --"})%> 

    <%= f.text_field :country_code, size: 4, readonly: true %> 

我可以根据国名得到国家代码。

country_code = Country.find_country_by_name('united states').country_code 

更新: 我尝试使用下面的JavaScript,但我不知道如何提取,我在寻找价值:

Javascript: 
    $ -> 
    $("select#user_country").change -> 
    $("input#user_country_code").val(MISSING VALUE) 

回答

1

您可以用javascript做到这一点。创建一个绑定到select域更改时的函数。然后在您的应用中创建一个API调用,该调用将响应您要对表单进行的更改。

+0

我试图实现,但我试图获取country_code并将其放置在text_field中失败。我会更新我的问题,以更具体。 –

+0

谢谢你的帮助。 –

+0

尝试像这样 var country_code = $('#country_code')。val(); ...... $('#text_field')。val(country_code); – YaBoyQuy

1

你的选择器上有一个额外的右括号(})。不知道我认为的咖啡脚本的语法。

$("select#user_country}") 
+0

谢谢我纠正了这一点。 –

相关问题