如何在每个循环中选择空输入
how to select empty input in each loop?
我正在尝试循环访问一种形式的输入,并将所有输入值推送到数组中,以便稍后在我的代码中进行一些操作。另一方面,当我遍历每个输入时,我想检查所选输入是否为空,如果为空,我想将其值设置为"-"。这是我目前所拥有的——
当我运行并测试此代码时,没有输出正确的值。我错过了什么?
$('.NewTeam').eq(i).find('tr').each(function(event) {
//each row is one player
var Player = []; //A new array for every player
TeamInfo = TeamInfo + "'n Player " + counter + "'n";
$(this).find(":input").each(function() {
if ($(this).value == "") {
$(this).val("--");
TeamInfo = TeamInfo + this.value + " , " + " ";
Player.push(this.value);
}
TeamInfo = TeamInfo + this.value + " , " + " ";
Player.push(this.value);
});
counter++;
TeamArray.push(Player);
});
我认为你混淆了价值的使用。 $(this).value
不是有效的属性。jQuery有一个返回this.value
的方法val()
。因此,您需要始终如一地致电$(this).val()
。下面我删除了 if
语句并实例化了一个名为 value
的 tmp 变量。我分配它的方式是var value = $(this).val() || "--";
这说的是使值等于该节点的值,除非它是假的,然后将其设置为 "--"
.我还删除了字符串中一些不必要的串联。
$('.NewTeam').eq(i).find('tr').each(function (event) { //each row is one player
var Player = []; //A new array for every player
TeamInfo = TeamInfo +"'n Player " + counter + "'n";
$(this).find(":input").each(function(){
var value = $(this).val() || "--";
TeamInfo = TeamInfo + value + " , ";
Player.push(this.value);
});
counter++;
TeamArray.push(Player);
});
如果您有任何其他问题,请告诉我
两个问题:
1. $(this).value
你应该写this.value
或$(this).val()
,但不能写$(this).value
。
所以这个
if ($(this).value == ""){
应该变成:
if ($(this).val() === ""){
2. 代码重复
您在if
块内部和外部都这样做:
TeamInfo = TeamInfo + this.value + " , " + " ";
Player.push(this.value);
因此,如果if
条件为真,它将发生两次。所以最好不要在if
块内做。
和。。。
在将元素推送到TeamArray
数组时递增计数器。如果您希望计数器计算数组中的元素数,您可以为自己节省一行(和变量),因为这已经在 TeamArray.length
中可用。
相关文章:
- 基于单选框更新页眉,选中并选择输入文本
- 我想在选择输入文件上显示图像
- 指令中选择输入的双向绑定不起作用
- 调整从选择输入中获取数据并将其放入 DIV 的 jQuery 代码
- JS根据类型和名称选择输入
- jQuery使用这个获取任何选择输入的name属性
- 无法检索从窗口.本地存储中选择输入值
- 使用Javascript与选择输入交互
- 在Meteor中加载带有采集数据的选择输入字段
- 使用 jquery 控制两个选择输入的组合值
- JavaScript 中的 if 语句,用于从选择输入中获取值
- 用文本输入填充选择输入
- 我无法使用jquery选择输入的值
- 如何在选择“输入颜色”后从中获取新的颜色值
- 如何添加单选按钮和复选框将选择输入到一起以形成JavaScript输出
- jQuery;Ajax-在页面加载时将项目加载到选择输入
- JQuery 验证器不适用于选择输入
- 如何使用 Reactjs 选择输入中的所有文本,当它聚焦时
- Angularjs:如何在页面加载时预先选择输入文本字段
- Jquery 不能在表单内选择输入元素,但在表单外部选择输入元素