javascript - 循环到变量然后打印 var

标签 javascript

我正在尝试根据具有特定的字段的idname创建一个变量。但我遇到了一些麻烦,因为我的 JS 因多年的 jQuery 而有点生疏了。

波纹管是我的代码和 here是它的 js fiddle 。

所以首先我要检查点击,然后如果类invalid存在,则运行一个循环来查找name属性&每个具有 invalid 类的元素的 ID 属性

然后将其添加到一个数组中,然后我打印该数组

很简单,但似乎并没有发挥作用。我将此归咎于多年使用 jQuery,因为我应该能够在 JS 中弹出像循环一样简单的东西,没有问题。但我不知所措,似乎找不到关于为什么我没有将打印打印到控制台日志的错误。

document.getElementById("submiter").onclick = function() {
  errorLoop();
};

function errorLoop() {
    var errClass = element.classList.contains("invalid"),
      runner = document.document.getElementsByClassName("invalid"),
      dataL = [];


    if (errClass) {

      for (var i = 0; i < runner.length; i++) {
        var errName = runner.getAttribute("name"),
          errId = runner.getAttribute("id");

        dataL.push("Name: " + errName + " - ID: " + errId +", ");
      } //End for

      dataL.toString();

      console.debug(dataL);

      dataLayer.push({
        "validationError": "datal"
      });

    } //End if
  } //End errorLoop
<input type="radio" id="tiMs" name="ti" value="Ms" tabindex="16" class="invalid">
<input type="radio" id="tiMiss" name="ti" value="Miss" tabindex="17" class="invalid">
<input type="radio" id="tiMiss" name="hol" value="Miss" tabindex="17" class="invalid">
<a href="#" id="submiter">
  <strong>clickit</strong>
</a>

最佳答案

根据您的要求更改代码

function foo() {
		errorLoop();
	}

	function errorLoop() {
		var runner = document.getElementsByClassName("invalid"), dataL = [];
		

		if (runner) {

			for (var i = 0; i < runner.length; i++) {
				var errName = runner[i].getAttribute("name"), errId = runner[i]
						.getAttribute("id");

				dataL.push("Name: " + errName + " - ID: " + errId);
			} //End for

			dataL.toString();
          console.log(dataL)

			console.debug(dataL);

			

		} //End if
	} //End errorLoop
<input type="radio" id="tiMs" name="ti" value="Ms" tabindex="16"
		class="invalid">
	<input type="radio" id="tiMiss" name="ti" value="Miss" tabindex="17"
		class="invalid">
	<input type="radio" id="tiMiss" name="hol" value="Miss" tabindex="17"
		class="invalid">
	<a href="#" id="submiter" onclick="foo()"> <strong>clickit</strong>
	</a>

关于javascript - 循环到变量然后打印 var,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39491204/

相关文章:

javascript - 如何在深度未知的数组内递归构建子数组的路径

javascript - 使用 BrowserAction 设置背景图像

javascript - 用javascript中的变量替换运算符

javascript - Jquery input.mask 与正则表达式

javascript - 将 flash youtube 更改为嵌入对象

javascript - 在 jQuery 插件中嵌入开源库或插件

javascript - Ruby on Rails 实现 Ajax 帖子和评论

javascript - jQuery:如何使用文字对象方法中的方法获取全局变量

javascript - webRTC 检查是否正在使用 stun 服务器

javascript - Hook 之前的 Mocha 在套件之前没有运行