gpt4 book ai didi

javascript - 使用 javascript 将默认值传递给空字段时出错?

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

我的要求很小,在这里我动态获取表格的值。有时很少有字段返回一些 null/空白值。如果它给出空值显示错误消息,如 "worderId[i].childNodes[0] is undefined" 请帮助我如何为空值分配一些默认值。

if(worderId.length>0)
{

WOTableData= "<table cellpadding='0' cellspacing='1' border='0' width=100% class='display' id='WOData' ><thead><tr id='row1'><th>&nbsp;</th><th>worderId</th><th>wostatus</th></thead><tbody>";
var technologyImage="";
for(i=0;i<worderId.length;i++)
{

if (!worderId[i].childNodes || !worderId[i].childNodes.length || !worderId[i].childNodes[0].nodeValue) {
worderId[i].childNodes =="---";
}

WOTableData=WOTableData+"<tr title='"+worderId[i].childNodes[0].nodeValue+"</td><td>"+ worderId[i].childNodes[0].nodeValue+"</td><td>"+wostatus[i].childNodes[0].nodeValue+"</td></tr>";

}
WOTableData=WOTableData+"</tbody></table>";


document.getElementById("WODataDiv").innerHTML = WOTableData;
}

最佳答案

我不明白你这段代码

 if (!worderId[i].childNodes || !worderId[i].childNodes.length || !worderId[i].childNodes[0].nodeValue) {
worderId[i].childNodes =="---";
}

WOTableData=WOTableData+"<tr title='"+worderId[i].childNodes[0].nodeValue+"</td><td>"+ worderId[i].childNodes[0].nodeValue+"</td><td>"+wostatus[i].childNodes[0].nodeValue+"</td></tr>";

您正在检查 worderId[i].childNodes 是否不存在或者是否存在并假设它是一个数组,它至少有一个元素或该数组的第一个元素有一个名为 nodeValue 的键。如果这些条件中的任何一个为真,您分配

   worderId[i].childNodes =="---";

所以现在 worderId[i].childNodes 是一个字符串。然后你访问

  WOTableData=WOTableData+"<tr title='"+worderId[i].childNodes[0].nodeValue+"</td><td>"+ worderId[i].childNodes[0].nodeValue+"</td><td>"+wostatus[i].childNodes[0].nodeValue+"</td></tr>";

worderId[i].childNodes[0].nodeValue 将在上述任何条件成立的情况下给您一个错误,因为在这种情况下,您已经分配了 worderId 的值[i].childNodes 作为字符串,它不是数组。

所以,要修复它,你可以这样做

  var assignValue = "";
if (!worderId[i].childNodes || !worderId[i].childNodes.length || !worderId[i].childNodes[0].nodeValue) {
assignValue = worderId[i].childNodes =="---";
}else{
assignValue = worderId[i].childNodes[0].nodeValue;
}

WOTableData=WOTableData+"<tr title='"+assignValue+"</td><td>"+ assignValue+"</td><td>"+assignValue+"</td></tr>";

希望对您有所帮助!

关于javascript - 使用 javascript 将默认值传递给空字段时出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34236492/

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