我可以在运行时检索输入类型的名称值

时间:2015-01-04 04:16:57

标签: javascript

在我的表格中,我写了类似的内容:

Enter your Name : <input type="text" name="myname" />
<div id="mynameerror"> </div>
<br />

在验证中:我检索带有id&#39; mynameerror&#39;的元素,如果输入为空,我将一些错误字符串设置为innterHTML。

问题:

现在,是否可以通过检索&#39; 名称&#39;来构建 div 标记的ID名称。 &#39; 输入&#39;的属性标签?

类似的东西:

<div id="name property" + "error"> </div>   

2 个答案:

答案 0 :(得分:0)

id s不能有空格。使用下划线或其他分隔符。

此外,在运行时更改元素的id是不好的做法。

window.setTimeout(function() {
  // Get the input's name
  var name = document.querySelectorAll('input[type="text"]')[0].name;

  // Set the id for the div to be "myname_error"
  document.getElementById("mynameerror").setAttribute("id", name + "_error");

  // Verify the element's id was altered by retrieving it.
  console.log(document.getElementById("myname_error"));
}, 1000);
Enter your Name :
<input type="text" name="myname" />
<div id="mynameerror"></div>

答案 1 :(得分:0)

试试这个:

HTML:

<input type="text" name="fname" id="fname">
<span id="fname_error"></span>
<br><br>
<input type="button" onclick="check()" value="Check">

脚本:

<script>
function check(){
    var fname = document.getElementById("fname").value;
    if(!fname){
     document.getElementById("fname_error").innerHTML = "Text Empty!";
    } else {
     document.getElementById("fname_error").innerHTML = "No Error!";
    }
 }
</script>