首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用javascript获取f.select rails表单助手

使用javascript获取f.select rails表单助手
EN

Stack Overflow用户
提问于 2015-05-06 07:53:06
回答 3查看 1K关注 0票数 2

我试图在我的rails应用程序中检索f.select表单助手的值。

f.select的代码是(在HAML中):

代码语言:javascript
复制
= f.select :level, [["L1 - Super easy", 1], ["L2 - Warm-up", 2], ["L3 - Easy exam questions", 3], ["L4 - Moderate exam questions", 4], ["L5 - Difficult exam questions", 5]], id: "level-AS"

这将导致以下html:

代码语言:javascript
复制
<select id="test_level" name="test[level]">

    <option value="1" selected="selected">L1 - Super easy</option>
    <option value="2">L2 - Warm-up</option>
    <option value="3">L3 - Easy exam questions</option>
    <option value="4">L4 - Moderate exam questions</option>
    <option value="5">L5 - Difficult exam questions</option>

</select>

f.select有一个名为"level-AS“的id,我已经设法使用

代码语言:javascript
复制
$('#level-AS').select()

这给了我Object { context: HTMLDocument → new, selector: "#level-AS" },但我希望它返回所选的实际值,即“容易”或“难”。

我也试过

代码语言:javascript
复制
$('#level-AS').select().val()

我也试过

代码语言:javascript
复制
$('#level-AS').val()

但是这个返回未定义的..。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-05-06 08:08:58

你应该简单地做:

代码语言:javascript
复制
$('#level-AS').val()

或者根据你的html:

代码语言:javascript
复制
$('#test_level').val()

Sidenote,而不是由id定位,您可以:

代码语言:javascript
复制
$('select[name="test[level]"]').val()
票数 4
EN

Stack Overflow用户

发布于 2015-05-06 09:52:08

我认为您的问题是您的f.select中的ID正在丢失。我认为这是因为rails如何将参数分成不同的部分。试试这个:

代码语言:javascript
复制
= f.select :level, [["L1 - Super easy", 1], ["L2 - Warm-up", 2], ["L3 - Easy exam questions", 3], ["L4 - Moderate exam questions", 4], ["L5 - Difficult exam questions", 5]], {}, {id: "level-AS"}
票数 1
EN

Stack Overflow用户

发布于 2015-05-06 08:15:27

您可以调用val()方法来获取值。

代码语言:javascript
复制
$('#level-AS').val()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30070696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档