所以我有2个选择标签,一个选择数据类型,另一个选择该数据的形式。
第一个标记Données
<select style="display: block;" name="Donnee" id="Donnee" onchange="getComboB(this)" required>
<option value="">Choisir ...</option>
<option value="Alphanumérique">Alphanumérique</option>
<option value="Numérique">Numérique</option>
<option value="Booléen">Booléen</option>
<option value="Date">Date</option>
</select>
第二个标记Saisie
<select style="display: block;" name="Saisie" id="Saisie" onchange="getComboA(this)" required>
<option value="">Choisir ...</option>
<option value="Libre">Valeur Libre</option>
<option value="Multiples">Valeurs Multiples</option>
<option value="Intervalle">Intervalle</option>
</select>
我需要获得两个select标签的组合才能显示某个输入。要解释更多:如果我在Saisie中选择Intervalle选择哪个意味着区间数据的类型只能是日期或数字(这是一个例子)。 所以我采用了这种方式:
value_Donnee='';
function getComboB(sel) {
var value = sel.options[sel.selectedIndex].value;
value_Donnee = value;
}
function getComboA(sel) {
var value = sel.options[sel.selectedIndex].value;
if(value == "Libre")
{
$("#contain").html('');
}
else if(value == "Multiples")
{
$("#contain").html('');
$("#contain").html('Multiples');
}
else
{
$("#contain").html('');
if(value_Donnee == "Numérique")
{
$("#contain").html('');
$("#contain").html('Num');
}
else if (value_Donnee == "Date")
{
$("#contain").html('');
$("#contain").html('Date');
}
else
{
$("#contain").html('');
$("#contain").html('Le type des données ne peut être que Date ou Numérique');
}
}
}
问题是它没有考虑getComboB它只取第一个值:/任何提示。提前谢谢。
答案 0 :(得分:0)
我不确定你的逻辑,但你可以尝试这样的事情:
$('select').change(function(){
var donnee = $('#Donnee').val();
var saisie = $('#Saisie').val();
if(saisie == "Libre")
{
$("#contain").html('');
}
else if(saisie == "Multiples")
{
$("#contain").html('Multiples');
}
else
{
if(donnee == "Numérique")
{
$("#contain").html('Num');
}
else if (donnee == "Date")
{
$("#contain").html('Date');
}
else
{
$("#contain").html('Le type des données ne peut être que Date ou Numérique');
}
}
});
答案 1 :(得分:0)
我确定你的jquery包括路径有问题。因为我用简单的$("#contain").html
替换了alert
并且一切运作良好。
答案 2 :(得分:0)
我不知道这是不是你的意思,但你可以试试这个:
$(document).ready(function(){
$('#Donnee, #Saisie'). change(function(){
$('#contain').html(test());
});
});
function test(){
var donnee = $('#Donnee option:selected').val();
var saisie = $('#Saisie option:selected').val();
if (donnee == 'Numérique'){
donnee = 'Numérique';
} else if (donnee == 'Date'){
donnee = 'Date';
} else {
donnee = 'Le type des données ne peut être que Date ou Numérique';
}
return saisie + ' ' +donnee;
}