jquery - 如果页面上所有输入文本的输入值为 NaN,则将文本的输入值更改为 -999
问题描述
我想将文本值更改为 -999,因为它的值是 NaN。我确实有代码,但是我想为 50 个输入框做,我不想写 50 次。请看一下我的代码,并给我您宝贵的建议。
if($('input[name="tt1"]').val() === 'NaN') {
$('input[name="tt1"]').val('-999');
};
if($('input[name="tt2"]').val() === 'NaN') {
$('input[name="tt2"]').val('-999');
};
if($('input[name="tt3"]').val() === 'NaN') {
$('input[name="tt3"]').val('-999');
};
if($('input[name="tt4"]').val() === 'NaN') {
$('input[name="tt4"]').val('-999');
};
// and so on..
<input name='tt1' value='NaN'><br>
<input name='tt2' value='NaN'><br>
<input name='tt3' value='NaN'><br>
<input name='tt4' value='NaN'><br>
and so on...
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
解决方案
您可以使用属性选择器,有很多选项可供选择。如果您input names
一开始就tt
可以将选择器更改为以下内容
$('input[name^="tt"]').each(function(){
if($(this).val() === 'NaN') { // use $(this) here at that is one of each input elements
$(this).val('-999');
};
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input name='tt1' value='NaN'><br>
<input name='tt2' value='NaN'><br>
<input name='tt3' value='NaN'><br>
<input name='tt4' value='NaN'><br>