0
因此,我正在制定一个决策树,它只是从一个区域移动到另一个区域,我只有两个项目会影响到出来,但它们被用在9个不同的区域。jQuery决策树,是否有比这更便携的方式?
第一个是任务(a),第二个是材料(b),材料可以从一个部分更改为下一个部分。
所以prj1> A + B = C
但可以在一个项目中有很多任务,所以
A1 + B1 = C A2 + B2 = C
等
现在我正在使用该任务将展开下一个手风琴,该手风琴将具有一组新的单选按钮,每次任务更改选择时都必须复制该按钮。当这个改变时,我不得不重写我的jQuery,并且因为这是很多代码,我希望有一组新的眼睛告诉我是否有这样做的方式。
我的单选按钮看起来像这样...
<form id="first-metalE">
<input class="first-metal" type="radio" name="firstE" value="1"> Copper<br>
<input class="first-metal" type="radio" name="firstE" value="2"> Brass<br>
<input id="alum-e" type="radio" name="firstE" value="8"> Aluminum<br>
<input id="stain-e" type="radio" name="firstE" value="4"> Stainless Steel
</form>
<form id="second-metalE">
<input class="second-metal" type="radio" name="secondE" value="1"> Copper<br>
<input class="second-metal" type="radio" name="secondE" value="2"> Brass<br>
<input id="alum-e-two" type="radio" name="secondE" value="8"> Aluminum<br>
<input id="stain-e-two" type="radio" name="secondE" value="4"> Stainless Steel
</form>
和我的jQuery看起来像这样...
function setMetalElectric() {
// get value from the first radio button group and convert to number
var firstmtlE = $('input[name=firstE]:checked', '#first-metalE').val()*1;
// get value from the second radio button group and convert to number
var secondmtlE = $('input[name=secondE]:checked', '#second-metalE').val()*1;
// add results from first and second radio group
var mtlselectionE = firstmtlE + secondmtlE;
// P1
if ((mtlselectionE == 2) || (mtlselectionE == 3) || (mtlselectionE == 4)) {
alert(' directs to E1 ');
$('#metal-select').data('toggle', '#elec-cat-copperBrass');
$('.prd-back').data('toggle', '#elec-cat-copperBrass');
$('.attr-bck-to-mtl').data('toggle', '#electric-mtl');
// P2
} else if ((mtlselectionE ==5) || (mtlselectionE ==6) || (mtlselectionE ==8)) {
alert(' directs to E2 ');
$('#metal-select').data('toggle', '#elec-cat-stainles');
$('.plum-prd-back').data('toggle', '#elec-cat-stainles');
$('.attr-bck-to-mtl').data('toggle', '#electric-mtl');
// P3
} else if ((mtlselectionE ==9) || (mtlselectionE ==10) || (mtlselectionE ==16)) {
alert(' directs to E3 ');
$('#metal-select').data('toggle', '#elec-cat-alum');
$('.plum-prd-back').data('toggle', '#elec-cat-alum');
$('.attr-bck-to-mtl').data('toggle', '#electric-mtl');
// errors
} else if ((mtlselectionE ==12)) {
alert(' Error ');
} else if ((mtlselectionE !=2,3,4,5,6,8,9,10,16)) {
alert(' You didnt select two metals ');
} else { alert('something is wrong')} ;
};
这是所有工作,我只是想,必须有一个更简单的方法,我已经使用了很多data-target =“”和jQuerys .data(),但是这个让我想知道是否有更简单的方法。
看起来像一个体面的想法,我将不得不看看开关,以及如何使用它,并尝试应用到我的情况。谢谢! – phlipinmi 2014-09-05 14:06:40
完成此工作后,我工作了另一个决策树并使用了开关,您说得对,它工作得非常好,我能够开发出高效的工作。 – phlipinmi 2014-09-28 23:59:08