Ruby on rails 选择表单中的第三个下拉列表时是否自动重定向?

Ruby on rails 选择表单中的第三个下拉列表时是否自动重定向?,ruby-on-rails,ruby,drop-down-menu,twitter-bootstrap,typeahead,Ruby On Rails,Ruby,Drop Down Menu,Twitter Bootstrap,Typeahead,我有3个typeahead字段: 详情如下: 国家:||uuuuuuuuuuuuuuuuuuuuuuuuu| 状态:|uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu| 城市:城市| 下面是第二个typeahead字段的代码(其余字段类似): 现在。。。我需要两个typeahead字段看起来都像下拉列表,可以通过下面的说明来实现。。没问题 我问的问题与下面的“最后一个选项”有关:

我有3个typeahead字段:

详情如下:

国家:||uuuuuuuuuuuuuuuuuuuuuuuuu|

状态:|uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu|

城市:城市|

下面是第二个typeahead字段的代码(其余字段类似):


现在。。。我需要两个typeahead字段看起来都像下拉列表,可以通过下面的说明来实现。。没问题

我问的问题与下面的“最后一个选项”有关: 注意:我是在Rails中构建的,所以ruby代码会很好

占位符大小写:

我需要每个下拉列表都有一个默认的灰色占位符文本

例如:

国家:美国|

州:爱荷华州|

城市:得梅因|

缺少值的情况:

如果用户键入的城市值在自动完成中不存在,我想向他们显示一个带有链接的下拉列表

例如:用户类型在“雅虎”在城市领域。这将导致输出“该城市不存在,请单击此处搜索”

点击上面的文字会将我重定向到Google.com

错误案例:

如果在第一个字段(国家/地区)中未选择任何内容。。第二个字段应该在下拉列表中有一个默认值:“请选择一个国家开始”

最后一个选项:

成功选择一座城市,如:旧金山…我想重定向到一个新的html文件,如“mysite.com/datastore/calsan.html”(每个选项的前三个字母用小写字母附加在一起)

这最后的html文件将预先生成,并将有相关的统计数据和有趣的事实,城市“旧金山”。。。我还将在datastore文件夹中预先生成其他城市的有趣信息。

请参阅下面的片段

占位符大小写

<script type="text/javascript">
  $(document).ready(function(){
    $('.combobox').combobox({placeholder: "Type Something.."});
  });
</script>

$(文档).ready(函数(){
$('.combobox').combobox({占位符:“键入某物…”);
});

最后一个选项

<script type="text/javascript">
    $('.combobox').change(function(){
      if($(this).val().length > 0){
        var fileName = $(this).val().substr(0,3); // this is for getting the first 3 characters, apply the same logic wherever necessary
        window.location("/datastrore/" + fileName + ".html");
      }   
    })
</script>

$('.combobox').change(函数(){
如果($(this.val().length>0){
var fileName=$(this).val().substr(0,3);//这用于获取前3个字符,必要时应用相同的逻辑
window.location(“/datastrore/”+fileName+“.html”);
}   
})

最后一个选项

<script type="text/javascript">
    $('.combobox').change(function(){
      if($(this).val().length > 0){
        var fileName = $(this).val().substr(0,3); // this is for getting the first 3 characters, apply the same logic wherever necessary
        window.location("/datastrore/" + fileName + ".html");
      }   
    })
</script>
似乎有一种简单的方法可以通过内联javascript和选项值实现这一点。我想我会用这种更简单的方法

占位符大小写和所有其他大小写


上面的库解决了我所有的问题,非常强大!这不适用于bootstrap,但我不介意bootstrap有类似的选项。

非常感谢您在上述两种情况下提供的帮助。。特别是“最后一个选项”案例。。您/其他人是否也可以帮助解决另外两种情况?对于缺少值的情况,您需要调整combobox js代码。错误案例同样可以使用我上面提到的类似javascript来完成,请参见此处以供参考:……他们是否使用javascript来解决这些案例?如果是这样的话,怎么做?当然,他们使用的是javascript,但是他们使用的是另一个js插件,您使用的插件没有给链接中提到的功能提供那么多的灵活性