获取具有$ key的名称元素

时间:2017-05-02 03:05:47

标签: javascript php html

PHP

<input type="number"  min="0" max="500" value="" name="qty<?php echo $key ?>" id="<?php echo $key ?>" onChange="findTotal()" />

JS

function findTotal() {
    var arr = document.getElementsByName('qty');
    ....
}

如何按名称获取内部有$key的元素?

4 个答案:

答案 0 :(得分:0)

让我们说$ key是&#39; x&#39;。然后你可以使用getElementbyID(&#39; x&#39;),因为回显$ key与把id =&#34; x&#34;相同。

答案 1 :(得分:0)

哦,我明白了。你有一系列具有不同数量键的行。

然后尝试这个。

PHP中的

<input type="number" min="0" max="500" value="" name="qty<?php echo $key ?>" id="<?php echo $key ?>" onChange="findTotal('qty<?php echo $key?>')" />

和JS:

 function findTotal(key) {
    var arr = document.getElementsByName(key);
    ....
}

答案 2 :(得分:0)

您可以将this指定为函数参数,然后在执行onchange事件时可以从函数中调用其名称或ID !!

//assign this
<input type="number"  min="0" max="500" value="" name="qty<?php echo $key ?>" id="<?php echo $key ?>" onChange="findTotal(this)" />

function findTotal(current) {
  var arr = current.name; // current.id for id
  alert(arr);    
}

答案 3 :(得分:0)

由于您的name是动态的,除非您的JS知道动态name(例如,如果您有一个列表),否则您无法通过name获取该元素他们正在循环中运行它们。

在您的情况下,您可能想尝试使用此处概述的data属性: Mozzila - Using data attributes

您也可以利用此答案中列出的thisJavascript Get Element Value - Answer By yorick

如果这有帮助,请告诉我。如果您能提供有关具体实施的更多信息,我或许可以改进这个答案。

干杯!