ruby - Rails:从下拉菜单中选择时禁用输入标签
问题描述
场景/上下文
我有一个下拉菜单,下面有两个输入元素。
从下拉菜单中,是公司名称(值设置为各自的公司 ID),以及另一个提示Add a new company。
如果从下拉列表中选择了添加新公司的选项,则用户将填写 2 个输入字段元素(即公司名称和公司电子邮件)。
否则,如果从下拉列表中选择了可用的公司,则 2 个输入字段(用于公司名称和电子邮件将被禁用)。
我的问题
如果我希望在不刷新页面的情况下发生事情,这是否可以在没有 AJAX 调用的情况下完成?任何人都可以提出一些其他的选择?
非常感谢!
解决方案
这绝对是可能的,尽管您需要使用一些 JavaScript 来实现它并在初始页面加载时向 DOM 加载更多数据。
对于option
您的选择下拉列表中的每个,为和company
添加一个数据属性。name
email
change
然后,在 JavaScript 中查看该事件的下拉列表。每当触发该事件时,如果为所选选项定义了data-company-name
和属性,则禁用输入字段并使用这些值填充它们。data-company-email
如果未为该选项定义这些数据属性(可能仅适用于您的“添加新公司”选项),则清除输入字段中的值并启用它们。
推荐阅读
- python - 尝试在没有已知父包的情况下进行相对导入 - 无法从并行字典导入 python 文件
- rust - 如果按照 Clippy 的建议使用 && 折叠嵌套会改变行为吗?
- javascript - 按开始和结束时间计算持续时间
- r - 如何生成具有不同方差(异方差)的随机数据。在 R 中
- javascript - 使用 window.open() 函数打开已打开的选项卡而不重新加载已打开的选项卡
- javascript - 从 Devtools 处理组件删除
- javascript - 如何使用 Puppeteer 处理弹出窗口
- java - 在我的数组中找到中位数,同时将数字从小到大排序
- angularjs - 为什么 dateAdapter.setLocale 默认为某些语言?
- javascript - 如何使用 Javascript 将样式表应用于元素