javascript - val ('' ) 删除动态表中的所有值

标签 javascript php jquery

我有一个动态表,其中一列是从数据库获取的,另一列是动态字段。代码如下:

PHP Code

<table class="table table-bordered" id="tb" style='width:30%;margin-left:30%;'>
    <tbody>
        <?PHP
            $myquery=" select ROW_NUMBER,Weightage FROM Appraisal_Objectives WHERE Serial_Number like '%1153' ORDER BY Row_Number asc";
            $fetched=sqlsrv_query($conn,$myquery) ; 
            if( $fetched === false ) { die( print_r( sqlsrv_errors(), true ));}
            while($res=sqlsrv_fetch_array($fetched,SQLSRV_FETCH_ASSOC))
            {
                $Weightage=$res['Weightage'];
                $Row_Number=$res['ROW_NUMBER'];
                    echo "<tr><td>".$Weightage."</td>";
                    echo "<td><input type='number' name='Rating[]' id='Rating' class='Rating form-control' onkeypress='return isNumberKey(event)' onChange='calc(this.parentElement.parentElement)' td>";
                    echo "<td style='display:none'><input type='number' name='max_rating[]' id='max_rating' class='max_rating form-control' onChange='calc(this.parentElement.parentElement)' value='$Weightage' td>";
                    echo "<td style='display:none'><input type='number' name='Row_Number[]' id='Row_Number' class='Row_Number form-control' value='$Row_Number' td></tr>";
            }
        ?>
    </tbody>
</table>

评分中输入的数据与最大评分中输入的数据进行比较,如果Rating > Max Rating 生成警报。到这里为止一切正常。如果条件满足,我试图将值设为空白。 jQuery 代码如下:

jQuery Code

<Script>
    function isNumberKey(evt){
        var charCode = (evt.which) ? evt.which : event.keyCode
        if (charCode > 31 && (charCode != 46 &&(charCode < 48 || charCode > 57)))
            return false;
        return true;
    }

    window.calc = function (thisRow){
        var one = thisRow.getElementsByTagName('input')[0].value;
        var rating = parseInt(one);
        var two = thisRow.getElementsByTagName('input')[1].value;
        var maxrating = parseInt(two);
        if(rating > maxrating)
        {
            alert('Your rating cannot exceed the maximum rating!');
            $(".Rating").each(function(){
            $(".Rating").val('');
            });
        }
    }
</script>

Issue :

当满足条件并生成警报时,表中存在的所有行值都会重置,而不是仅重置该特定行。我哪里做错了或者我错过了什么?我是 jQuery 的新手,我所做的一切都来自互联网的各种来源。将不胜感激任何帮助/建议。干杯! :)

最佳答案

$('.Rating') - 获取该类页面上的所有元素。 您应该指定您的行。

试试这个:

thisRow.getElementsByClassName('Rating')[0].value = '';

更多: 您也可以尝试这个 $(thisRow).find('.Rating').val('');

关于javascript - val ('' ) 删除动态表中的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35933436/

相关文章:

javascript - React - 捕获 shouldComponentUpdate 中的中间体

javascript - 将 javascript 变量传递给 php

jQuery工具模态叠加在IE6-8中显示问题

jquery show hide 未按预期工作

javascript - 在 Angular js 中可编辑的显示较长网格数据的最佳选择

javascript - 选择框高度在 chrome 中不起作用

javascript - 如何将参数作为 Promise 链中 then() 的参数传递给函数,并保留先前解析的值?

javascript - 如何区分刷新或关闭窗口触发的卸载事件?

php - 如何在 JavaScript 和 PHP 中对 URL 进行编码?

对象数组上的 PHP usort 函数不起作用