提取 Javascript / Jquery 中的字符串部分
Extract string part in Javascript / Jquery
我正在使用 Cocoon gem 为工作时间添加动态嵌套表单。
Cocoon returns 一个 open_time 和 close_time 输入。
id = merchant_working_hours_attributes_ID_open_time
id = merchant_working_hours_attributes_ID_close_time
在 css 处,close_time 输入定义为 display:none,如果 open_time 输入标记为非零,我的想法只是显示。
但是为此,我需要从 open_time 输入中提取 ID,并根据该 ID 将 css 样式添加到 close_time 输入。
如何使用 javascript / Jquery 实现?还有其他形式可以实现吗?
你的问题说你有一个字符串,你想提取相应元素的 ID 来执行样式。
使用split()
var string = merchant_working_hours_attributes_ID_open_time;
var parts = string.split("_"); //You will have the ID at 4th parts[4]
根据提取的ID,可以使用show()
和hide()
。
例子
if($('#opentimeID').val() != '')
{
$('#opentimeID').show();
}
string.substring(start,end)
这个应该比较简单。我的假设是,默认情况下 "close time" 字段不显示。但是,当您开始将值放入 "open time" 字段时,"close time" 字段就会出现。
如果是这种情况,这应该适合您。
JavaScript
const openTime = document.getElementById('merchant_working_hours_attributes_ID_open_time')
const closeTime = document.getElementById('merchant_working_hours_attributes_ID_close_time')
if (openTime.value.length > 0) {
closeTime.style.display = 'block'
}
我正在使用 Cocoon gem 为工作时间添加动态嵌套表单。
Cocoon returns 一个 open_time 和 close_time 输入。
id = merchant_working_hours_attributes_ID_open_time
id = merchant_working_hours_attributes_ID_close_time
在 css 处,close_time 输入定义为 display:none,如果 open_time 输入标记为非零,我的想法只是显示。
但是为此,我需要从 open_time 输入中提取 ID,并根据该 ID 将 css 样式添加到 close_time 输入。
如何使用 javascript / Jquery 实现?还有其他形式可以实现吗?
你的问题说你有一个字符串,你想提取相应元素的 ID 来执行样式。
使用split()
var string = merchant_working_hours_attributes_ID_open_time;
var parts = string.split("_"); //You will have the ID at 4th parts[4]
根据提取的ID,可以使用show()
和hide()
。
例子
if($('#opentimeID').val() != '')
{
$('#opentimeID').show();
}
string.substring(start,end)
这个应该比较简单。我的假设是,默认情况下 "close time" 字段不显示。但是,当您开始将值放入 "open time" 字段时,"close time" 字段就会出现。
如果是这种情况,这应该适合您。
JavaScript
const openTime = document.getElementById('merchant_working_hours_attributes_ID_open_time')
const closeTime = document.getElementById('merchant_working_hours_attributes_ID_close_time')
if (openTime.value.length > 0) {
closeTime.style.display = 'block'
}