getElementById检查是否包含尺寸

时间:2018-09-07 18:55:53

标签: javascript

有几种检查表单域的方法,例如

document.getElementById('xx['+nr+']').value.length != ''
document.getElementById('xx['+nr+']').value.length != ''
document.getElementById('xx['+nr+']').value.length > 5

但是如何检查表单中的文本字段是否包含3512x525x88之类的文本?

使用正则表达式模式? numbers x numbers x numbers吗?

2 个答案:

答案 0 :(得分:1)

使用正则表达式检查数字x数字x数字模式。因此,假设您将文本字段中的值放入名为input的变量中。这应该工作..

/^\d+x\d+x\d+$/i.test(input)

答案 1 :(得分:1)

您可以使用正则表达式来匹配项目的值。

const
  // This regex will match a text which:
  // - starts with one or more digits
  // - followed by an 'x'
  // - followed by one or more digits
  // - followed by an 'x'
  // - followed by one or more digits
  regexDimension = /^\d+x\d+x\d+$/;
  
// Get the elements from the DOM which may contain a dimension and iterate
// over all those elements.
document.querySelectorAll('.item').forEach(item => {
  // Check if the value of the element matches the regex.
  if (regexDimension.test(item.value.trim())) {
    // Do something with the element.
    item.style.backgroundColor = 'lightgreen';
    console.log(`Dimension found: ${item.value} (id=${item.id})`);
  }
});
<input class="item" type="text" value="1" id="not-me">
<input class="item" type="text" value="1x2" id="not-me-either">
<input class="item" type="text" value="1x2x3" id="pick-me">
<input class="item" type="text" value="3512x525x88" id="or-pick-me">