gpt4 book ai didi

javascript - 如果 JS 中的 innerText 为空,则将输入值推送到数组

转载 作者:行者123 更新时间:2023-11-30 11:23:17 25 4
gpt4 key购买 nike

我有多个按钮和输入。我正在尝试将 innerText 推送到数组。由于有不同类型的标签,我需要指定“if”来选择输入值或按钮的 innerText。

这是我目前所拥有的:

if ($("#dragulaContainer2").children().length > 0) {
var arraySelected = [];
var children = $('#dragulaContainer2').children();

for (var i = 0; i < children.length; i++) {
arraySelected.push(children[i].innerText);
}
console.log(arraySelected);
}

我的非编码逻辑是:

如果 child 的内部文本等于“”而不是取值。

但是如何构建代码呢?并将其添加到 innerText 行作为 if 语句?

添加了这个但是它不起作用....

if ($("#dragulaContainer2").children().length > 0) {
var arraySelected = [];
var children = $('#dragulaContainer2').children();

for (var i = 0; i < children.length; i++) {

arraySelected.push(children[i].(if (innerText === "") {
val
} else {
innerText
});
}
console.log(arraySelected);
}

最佳答案

因此,如果没有文本,则推送

var arraySelected = $("#dragulaContainer2").find(":input").map(function() {
return this.textContent || this.value;
}).get();

console.log( arraySelected );
<div id="dragulaContainer2">
<input value="0">
<input value="test 1">
<span>test 2</span>
<textarea>test 3</textarea>
<p>test 4</p>
<button>btn text</button>
<button value="btn val">use text</button>
<button value="use value"></button>
</div>



<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

或者如果你使用 ES6,你可以“缩短”为

$("#dragulaContainer2").find(":input").map((i,el) => el.textContent || el.value).get();

使用您的 if else 编码风格,它看起来像:

var $inp = $("#dragulaContainer2").find(":input");
var arraySelected = [];

$inp.each(function(){
if(this.textContent) {
arraySelected.push(this.textContent);
} else {
arraySelected.push(this.value);
}
});

console.log( arraySelected );

关于javascript - 如果 JS 中的 innerText 为空,则将输入值推送到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48992376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com