我有点生疏,因为我已经使用了很多JavaScript了很长时间。我想要查看mouseout事件表单中的所有输入字段,并设置会话cookie来存储该值。有没有一个简洁的方法,我可以这样做,所以我可以在一个表格中观看所有表格字段,避免需要一次看一个字段 - 我预计可能会有大量的字段,所以我想要一个有效的方式瞄准他们。
说我的表格是:
<form action="#">
<input id="form1_name" name="name" class="s_input" required="required" type="text">
<input id="form1_email" name="email" class="s_input" required="required" type="text">
<textarea id="form1_message" name="message" class="s_input" cols="30" rows="4" required="required"></textarea>
<input id="form1_submit" name="submit" class="s_input" value="Send" type="submit">
</form>
这是我用我的JS获得的,目前它失败了:
//get all the fields in question
var inputFields = document.getElementsByClassName('s_input');
//can see the inputs collected in an array
console.log(inputFields);
//fails
inputFields.addEventListener("mouseleave", function( event ) {
});
我收到错误:
TypeError:inputFields.addEventListener不是函数[了解更多]
答案 0 :(得分:1)
$iwr = (Invoke-WebRequest -Uri $categoryLink).Links.Href
创建一个数组,以便为需要循环遍历集合的类document.getElementsByClassName('s_input');
的每个元素添加任何内容。
这样的事情应该有效:
s_input
编辑:使用for (i = 0; i < inputFields.length; i++) {
inputFields[i].addEventListener("mouseleave", function( event ) {
//event code here
});
}
事件可能更好,因为如果用户在触摸设备上或仅使用键盘来通过输入进行制表,则mouseleave将无法工作。
您可以执行以下操作,而不是附加事件侦听器以进行模糊处理:
"blur"