简体   繁体   English

使用JavaScript获取td标签中输入字段的值

[英]Get value of input field in td tag using javascript

I'm trying to get value of input field which is present in <td> tag. 我试图获取<td>标记中存在的输入字段的值。

<td class="edit_td1" id="<?php echo $id; ?>">
    <div class="form-group">
        <div class="col-lg-3 inputContainer">
            <input class="form-control cls-quantity" id="quanti_<?php echo $id; ?>" name="number" type="text" />
        </div>
    </div>
</td>
//...some code here
<a href="customer_details.php?shop=<?php echo $_GET['shop'];?>" class="btn btn-info" role="button" onclick="return td_validation();">Generate Bill</a>

and javascript code is: 和javascript代码是:

function td_validation()
{
    //alert("tds validation");
    var tds = document.getElementById('table_id').getElementsByTagName('td');
    var sum = 0;
    //alert(tds.length);
    for(var i = 0; i < tds.length; i ++)
    {
        if(tds[i].className == 'edit_td1' && tds[i].innerHTML==0)
        {
            //alert(tds[i].innerHTML);
            sum +=i;
        }
    }
    if(sum !=0)
    {
        alert("Enter quantity for "+sum+" fields");
        return false;
    }
    else
    {
        return true;
    }
}

Here I want to get value in input field and if this value is 0 then do sum +=i . 在这里,我想在输入字段中获取值,如果该值为0,则sum +=i

Here is a shorter version of what are you trying to do: 这是您要执行的操作的简短版本:

function td_validation()
{
    var tds = document.querySelectorAll('#table_id td.edit_td1');
    var sum = 0;
    for(var i = 0; i < tds.length; i++)
    {
        if (tds[i].querySelector('input.cls-quantity').value === "0") {
           sum +=i;
        }
    }

    if(sum !=0)
    {
        alert("Enter quantity for "+sum+" fields");
        return false;
    }
    else
    {
        return true;
    }
}

@toivin's answer is correct, I did some modifications in it, @toivin的答案是正确的,我做了一些修改,

function td_validation()
{
    var tds = document.getElementById('table_id').getElementsByTagName('td');
    var sum = 0;
    for(var i = 0; i < tds.length; i ++)
    {
        if(tds[i].className == 'edit_td1' )
        {
            var a = parseInt(tds[i].querySelector('input.cls-quantity').value);
            if(a==0)
            {
                sum +=i;
            }
        }
    }
    if(sum !=0)
    {
        alert("Quantity should not be zero...!!!");
        return false;
    }
    else
    {
        return true;
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM