Hello StackOverflow社区,
我正在尝试将半智能系统整合到我们在Google AdWords上的活动进行报告;
我正在尝试将此系统集成到我们的自定义CRM中。
这个想法是,有多个下拉列表有助于形成一个句子,这个句子基本上是你正在做的请求,然后返回这个请求的答案。
例如:
(什么)(Where)where(Metric)(When)(比较?)
所有这些都是下拉菜单,并且会在选择时创建一个句子。例如:
X-FR *中的产品广告组*从3月10日到4月10日成本超过10%
* X-FR将是我在法国市场的AdWords帐户
基本上,每个下拉列表都有多个答案,但并非所有答案都可以与之前的下拉列表一起使用。
我正努力做到这一点让这件事尽可能有意义,但我承认这并不容易。
我想弄清楚我需要你帮助的是,如果你能想象我也做了什么,你将如何编写这个?我是否需要为每个下拉列表中的每个答案分配一个ID,然后创建一些可能的链数组?例如
如果产品是001,X-FR是032,成本是077,超过102等...那么你基本上可以找出所有可能的解决方案,如“[001,032,077,102,...] =这个答案”?
还有其他关于使用类似物(有点像树)的想法吗?
请注意我有基本的开发知识,我不是专业人士,我将有一个团队与我一起工作。
提前多多感谢, -Mathieu
答案 0 :(得分:0)
也许是这样的:
function get_select_value_array(){
var select_arr=[];
$('select').each(function(){
var this_id=$(this).attr('id');
var this_val=$(this).val();
if(this_id=='Product'){
select_arr[0]=this_val;
}else if(this_id=='X-FR'){
select_arr[1]=this_val;
}else if(this_id=='Cost'){
select_arr[2]=this_val;
}
});
return select_arr;
}
function compare_arrays(_arr1, arr2){
return ($(_arr1).not(arr2).length === 0 && $(arr2).not(_arr1).length === 0);
}
var etalon_arr=["001", "032", "077"];
var select_arr=get_select_value_array();
/* console.log(etalon_arr, select_arr);*/
if(compare_arrays(select_arr, etalon_arr)){
console.log('Is Good!!!');
}
div{
display:inline-block;
border-style:solid;
border-width:2px;
border-color:gray;
padding:10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div>
<select id="Product">
<option value="001">Product 001</option>
<option value="002">Product 002</option>
<option value="003">Product 003</option>
</select>
</div>
<div>
<select id="X-FR">
<option value="032">X-FR 032</option>
<option value="033">X-FR 033</option>
<option value="034">X-FR 034</option>
</select>
</div>
<div>
<select id="Cost">
<option value="077">Cost 077</option>
<option value="078">Cost 078</option>
<option value="079">Cost 079</option>
</select>
</div>