Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过javascript访问HTML输入数组字段_Javascript_Html_Input - Fatal编程技术网

通过javascript访问HTML输入数组字段

通过javascript访问HTML输入数组字段,javascript,html,input,Javascript,Html,Input,下面的HTML代码引用javascript根据计算值更新同一行中的另一个输入字段。我似乎无法引用HTML字段,因为它返回时未定义。问题是HTML输入数组值是NAME[EmployeeID],因此我将EmployeeID传递给函数以引用正确的HTML字段。只是似乎不知道如何格式化innerHTML命令 <script language="javascript"><!-- function updateAdvance(eWorked, eID, AdvanceAmt, eRate)

下面的HTML代码引用javascript根据计算值更新同一行中的另一个输入字段。我似乎无法引用HTML字段,因为它返回时未定义。问题是HTML输入数组值是NAME[EmployeeID],因此我将EmployeeID传递给函数以引用正确的HTML字段。只是似乎不知道如何格式化innerHTML命令

<script language="javascript"><!--
function updateAdvance(eWorked, eID, AdvanceAmt, eRate) {
  if (AdvanceAmt > 0) {
    var ePay    = eWorked * eRate;

    if (ePay < AdvanceAmt) {
      document.getElementById(Amt2Adv[eID]).innerHTML = AdvanceAmt.toFixed(2);
    } else {
      document.getElementById(Amt2Adv[eID]).innerHTML = ePay.toFixed(2);
    }
  }
}
//--></script>

HTML代码

              <tr>
                <td colspan="10"><form name="compensation" action="https://somewhere.com/something.php?date=2018-11-09&action=compensation" method="post"><table border="0" width="100%" cellspacing="0" cellpadding="2">
                  <tr>
                    <td class="contentHeading" align="center" colspan="8"><b>Compensation</b></td>
                  </tr>
                  <tr>
                    <td align="center"><b>Select</b></td>
                    <td align="center"><b>Employee</b></td>
                    <td align="center"><b>Type</b></td>
                    <td align="center"><b>Period</b></td>
                    <td align="center"><b>Amount</b></td>
                    <td align="center"><b>Worked</b></td>
                    <td align="center"><b>Amt->Adv</b></td>
                    <td align="center"><b>Advance</b></td>
                    <td align="center"><b>GiftCard</b></td>
                  </tr>
                  <tr>
                    <td align="center"><input type="checkbox" name="employee[4]" value="1" CHECKED></td>
                    <td align="center">Joe Fabitz</td>
                    <td align="center">Cash</td>
                    <td align="center">Hourly</td>
                    <td align="center">$10.00</td>
                    <td align="center"><input type="text" name="worked[4]" value="8.00" size="3" onKeyUp="updateAdvance(this.value, '4','30.00','10.00')"><input type="hidden" name="period[4]" value="1"></td>
                    <td align="center">$<input type="text" name="amt2adv[4]" value="0.00" size="4"></td>
                    <td align="center">$<input type="text" name="advance[4]" value="0.00" size="4"></td>
                    <td align="center">0</td>
                  </tr>
                  <tr>
                    <td align="center"><input type="checkbox" name="employee[3]" value="1" CHECKED></td>
                    <td align="center">Jane Fabitz</td>
                    <td align="center">Cash</td>
                    <td align="center">Hourly</td>
                    <td align="center">$10.00</td>
                    <td align="center"><input type="text" name="worked[3]" value="8.00" size="3" onKeyUp="updateAdvance(this.value, '3','100.00','10.00')"><input type="hidden" name="period[3]" value="1"></td>
                    <td align="center">$<input type="text" name="amt2adv[3]" value="20.00" size="4"></td>
                    <td align="center">$<input type="text" name="advance[3]" value="0.00" size="4"></td>
                    <td align="center">0</td>
                  </tr>
                  <tr>
                    <td align="center" colspan="8"><button type="submit" name="" class="css3button">Save</button>&nbsp;&nbsp;<a href="https://somewhere.com/something.php?date=2018-11-09"><button type="button" name="" class="css3button">Cancel</button></a></td>
                  </tr>
                </table></form></td>
              </tr>

补偿
选择
受雇者
类型
时期
数量
工作
金额->高级
进展
礼品卡
乔·法比茨
现金
每小时
$10.00
$
$
0
简·法比茨
现金
每小时
$10.00
$
$
0
拯救

如果要选择具有
getElementById
的元素,则需要具有注释中提到的
id
属性的元素

如果希望按元素名称获取元素,可以使用

  • document.querySelector
    ,返回与提供的
    查询匹配的第一个元素,或
  • document.getElementsByName
    返回带有提供的
    名称的所有元素
要设置
输入的显示值
s,您需要设置
输入的
,而不是
innerHTML

另外,
String
没有
toFixed
方法,您需要首先将
AdvanceAmt
解析为
Number

函数updateVance(eWorked、eID、AdvanceAmt、Rate){
AdvanceAmt=parseFloat(AdvanceAmt);
如果(AdvanceAmt>0){
var ePay=eWrked*汇率;
变量选择器=`input[name=“amt2adv\[${eID}\]”输入;
如果(ePay

补偿
选择
受雇者
类型
时期
数量
工作
金额->高级
进展
礼品卡
乔·法比茨
现金
每小时
$10.00
$
$
0
简·法比茨
现金
每小时
$10.00
$
$
0
拯救

HTML中似乎根本没有任何
id
s,那么
getElementById
应该选择什么?另外,函数中的所有参数是什么?