JavaScript监视表单字段和设置会话cookie

时间:2018-01-15 12:34:08

标签: javascript

我有点生疏,因为我已经使用了很多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不是函数[了解更多]

1 个答案:

答案 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"