如何使用rails对象在选择下拉列表中设置选项的值's的id
How to set the value of an option in a select dropdown using a rails object's id
我在Rails中有一个模态,它构建了一个公司对象,将其返回到我的选择下拉列表中(使用正确的名称),对其进行预处理并自动选择。然而,数据库中的现有对象在列表中显示为Rails生成的选项,并带有选项的名称和一个值-这个值是它们的对象。id,这样我就可以将两个模型关联在一起。我一辈子都不知道如何编写javascript来更新下拉列表中的值以及它的文本。
我当前的jquery:
//close the modal
$('#competitor_modal').modal('hide');
//prepend the name of the company to the select dropdown
$('#sales_opportunity_company_id').prepend($('<option></option>', {
text: <%= j @company.company_name%>,
}));
//select the newly prepended option
$('#sales_opportunity_company_id>option:eq(0)').attr('selected', true);
//show the submit button (I hide it whilst they are creating a new company to stop them accidentally submitting with the value "add new company"
$('#submit').show();
我尝试过使用:
<%= j @company.id %>
检索id,但这不起作用。我也尝试过所有让值自动设置的尝试(比如只是试图将整个rails对象预先设置为表单),但都没有成功。
我当前代码生成的html:
<select id="sales_opportunity_company_id" name="sales_opportunity[company_id]">
<option selected="selected">2</option>
<option value="1">Any company</option>
<option>Add new company</option>
</select>
正如你所看到的,我没有正确的身份证。我做错了什么?
试试这个:
// remove previously selected value:
$("#sales_opportunity_company_id :selected").removeAttr("selected");
// add new option as selected value:
$("#sales_opportunity_company_id").prepend('<option selected="selected" value="<%= @company.id %>"><%= @company.company_name %></option>');
相关文章:
- 使用Javascript获取所选选项ID
- 根据选项卡内部的文本链接中的哈希ID动态选择jqueryUI选项卡
- 从Bootstrap获取活动选项卡ID并将其传递给PHP
- 如何通过json对象选项卡中的Id来检查对象是否存在
- 在Chrome for iOS中,附加到用户代理字符串的唯一选项卡ID
- 如何在angular js中的select选项中获取所选项目id
- 为什么数据列表选项的id返回空值
- 如何将value和id动态添加到html下拉选项标记中
- Chrome扩展插件:runtime.last运行tabs.get/tabs.remove时出错:没有id为0的选项卡
- 我得到未捕获的类型错误:无法读取属性'选项'即使定义了元素id,也为null
- 将select选项添加到id中
- 具有一个#id的多选选项可显示n个隐藏表
- 单击图像时从数据库加载选项id
- 如何在脚本中选择之前获取所有选项id值
- 如何在一次点击中获取所有选定的选项值ID
- 如何在 KnockoutJS 中获取所选项目的 ID
- 创建折叠选项卡并动态添加 ID 和指向 jQuery 中 ID 锚点的链接
- Jquery 选项卡使 url 中的子 ID 选项卡保持打开状态
- 如何根据“选择 ID”选项值更改表的行和列
- $(“#id选项”).hide();不适用于safari/chrome