Javascript 是否更改If-Else函数以返回多个值?

Javascript 是否更改If-Else函数以返回多个值?,javascript,function,if-statement,Javascript,Function,If Statement,下面的JavaScript代码就是我用来从我们的自动化营销软件Eloqua中提取数据的代码。这适用于单选下拉列表。我想让它做的是为多选下拉菜单工作 我知道ProductValue变量可以工作。因此,我确信它在ifProductValue==ProductList[I].值中,特别是在.value中,因为它在下拉列表中调用该值。有没有一种方法可以使这个倍数增加?这几天我都快发疯了 function CustomerInformation() { var ProductValue = "<

下面的JavaScript代码就是我用来从我们的自动化营销软件Eloqua中提取数据的代码。这适用于单选下拉列表。我想让它做的是为多选下拉菜单工作

我知道ProductValue变量可以工作。因此,我确信它在ifProductValue==ProductList[I].值中,特别是在.value中,因为它在下拉列表中调用该值。有没有一种方法可以使这个倍数增加?这几天我都快发疯了

function CustomerInformation()

{

var ProductValue = "<span class=eloquaemail>MarketingCustomerInformation1</span>"; //Field Merge...Field merge is working
var ProductList = document.getElementById('C_Marketing_Customer_Information1').options; //Calling the contact record field

for(var i=0; i< ProductList.length; i++) 
    {       
        if(ProductValue == ProductList[i].value) 
            {
                document.getElementById('C_Marketing_Customer_Information1').value = ProductValue;
                break;
            }
        else 
            {
                document.getElementById('C_Marketing_Customer_Information1').value = "Select";
            }
    }   
}

您可以使用多个for循环:

var ProductValue = "<span class=eloquaemail>MarketingCustomerInformation1</span>"; //Field Merge...Field merge is working
var ProductList = document.getElementById('C_Marketing_Customer_Information1').options; //Calling the contact record field

for(var i=0; i< ProductList.length; i++) 
{      
    for(var j=0;j<ProductValue.length;j++)
    {
        if(ProductValue[j] == ProductList[i].value) 
        {
          document.getElementById('C_Marketing_Customer_Information1').option[i].selected="selected";
        }
    }
}
还可以添加一个布尔变量,以便在未选择任何内容时选择默认值

基本思想

第一个循环将遍历多选列表中的所有值。 第二个循环将遍历您传递给它的所有值,这意味着ProductValue需要是您希望选择的所有值的数组。 如果第一个数组ProductList[i]中的当前项等于==第二个数组ProductValue[j]中的当前项,则将该选项标记为选中。 一些有用的工具可以满足您的JS需求:

谷歌 W3Schools.com Firebug Firefox插件,虽然大多数浏览器都有一些与F12相关的东西可以提供帮助,但使用它可以查看变量并逐步完成函数
你有没有试过摆脱这个坏习惯;?尝试了这个,但是没有成功。很抱歉,我的JS非常有限。自从我开始这个项目以来,我一直在自学。所以你说的是运行多个循环?我尝试使用函数CustomerInformation中提供的代码,但似乎仍然使用正确的值填充字段Merge,但它拒绝在多选列表上传递值。以下是多选列表的代码:-请选择-苹果胡萝卜梨橙色如何调用此函数?是否有按钮,或者您是否在使用cookie或传递的参数,或者什么?