将global.getelementbyid连接到单个变量中

concatenation of global.getelementbyid into single variable

本文关键字:单个 变量 连接 global getelementbyid      更新时间:2023-09-26

我可以将3个global.getElementById语句连接到一个变量中吗?以下是一些代码。。

var cmbOrgNodeType = global.getElementById('cmbOrgNodeType').options[global.getElementById('cmbOrgNodeType').selectedIndex].value;    
var cmbOrgNodeSubType = global.getElementById('cmbOrgNodeSubType').options[global.getElementById('cmbOrgNodeSubType').selectedIndex].value;    
var cmbOrgNodeComponentType = global.getElementById('cmbOrgNodeComponentType').options[global.getElementById('cmbOrgNodeComponentType').selectedIndex].value;

我想把这三个连接成一个变量var TypeID=?我应该怎么做才能将这三个值存储在一个变量中。?

As是否将它们存储在一起?

var nodes = {
 cmbOrgNodeType: global.getElementById('cmbOrgNodeType').options[global.getElementById('cmbOrgNodeType').selectedIndex].value,
 cmbOrgNodeSubType: global.getElementById('cmbOrgNodeSubType').options[global.getElementById('cmbOrgNodeSubType').selectedIndex].value,
 cmbOrgNodeComponentType: global.getElementById('cmbOrgNodeComponentType').options[global.getElementById('cmbOrgNodeComponentType').selectedIndex].value
}
alert(nodes.cmbOrgNodeType)
alert(nodes.cmbOrgNodeSubType)
alert(nodes.cmbOrgNodeComponentType)

您可以通过用这样的javascript创建一个对象来实现这一点。

var TypeID={}
TypeID.cmbOrgNodeType =cmbOrgNodeType ;
TypeID.cmbOrgNodeSubType =cmbOrgNodeSubType ;
TypeID.cmbOrgNodeComponentType =cmbOrgNodeComponentType ;

如果你愿意,你可以这样访问它。

 TypeID.cmbOrgNodeType
 TypeID.cmbOrgNodeSubType 
 TypeID.cmbOrgNodeComponentType

您可以直接连接字符串:

var type = cmbOrgNodeType + " " + cmbOrgNodeSubType + " " + cmbOrgNodeComponentType;

然而,这将很难从中提取它们的旧值,所以除非你输出它,否则我建议你将它们存储在一个对象中,这样它就可以用作一个变量:

var type = {
    "cmbOrgNodeType": global.getElementById('cmbOrgNodeType').options[global.getElementById('cmbOrgNodeType').selectedIndex].value,
    "cmbOrgNodeSubType": global.getElementById('cmbOrgNodeSubType').options[global.getElementById('cmbOrgNodeSubType').selectedIndex].value,
    "cmbOrgNodeComponentType": global.getElementById('cmbOrgNodeComponentType').options[global.getElementById('cmbOrgNodeComponentType').selectedIndex].value
}

(这是对象文字符号)

然后,您可以使用type.cmbOrgNodeType等访问每个属性。

要创建所有值的串联字符串:

var TypeID = cmbOrgNodeType + cmbOrgNodeSubType + cmbOrgNodeComponentType;

除非你仍然需要单独访问,否则我会这样做:

TypeID = { 
  cmbOrgNodeType: null, 
  cmbOrgNodeSubType: null, 
  cmbOrgNodeComponentType: null 
}
for(name in TypeID) {
  TypeID[name] = global.getElementById(name).options[global.getElementById(name).selectedIndex].value;
}

请记住,DRY很好:)