gpt4 book ai didi

javascript - 在JS中选择数组值

转载 作者:太空宇宙 更新时间:2023-11-04 16:12:10 25 4
gpt4 key购买 nike

我的 JS 数组有问题,(当然我正在学习 JS,目前我真的很糟糕。)

事实是我的选择正在打印我的数组值,其中选择的值等于“移动”和“桌面”

这是我的主要问题:我想添加一个新值来打印它们!我尝试为每个值添加一个二维数组,但由于我不太擅长 JS,所以我没能做到。

这是我的 JS:

function afficher_lst_appareils() {

// On supprime tous les appareils de la liste déroulante
$('#lst_appareils').empty().prepend("<option value='0'>Sélectionnez un type d'appareil</option>");

// Le type d'appareil / système qu'on a sélectionné
var type_appareil = $('#lst_types_appareils').val();

var lst_appareils_assoc = {

'Windows 10' : 'desktop',
'Windows 8.1' : 'desktop',
'Windows 8' : 'desktop',
'Windows 7' : 'desktop',
'Windows Server 2003/XP x64' : 'desktop',
'Windows XP' : 'desktop',
'Windows 2000' : 'desktop',
'Windows ME' : 'desktop',
'Windows 98' : 'desktop',
'Windows 95' : 'desktop',
'Windows 3.11' : 'desktop',
'Windows Vista' : 'desktop',
'Linux' : 'desktop',
'Ubuntu' : 'desktop',

'Mac OS X' : 'mobile',
'Mac OS 9' : 'mobile',
'iPhone' : 'mobile',
'Android' : 'mobile',
'iPod' : 'mobile',
'iPad' : 'mobile',
'BlackBerry' : 'mobile',
'Mobile' : 'mobile'

};


// On parcourt le tableau représentant l'ensemble des OS / appareils
$.each(lst_appareils_assoc, function(key, value) {

// Si le type de système / appareil correspond à celui sélectionné et s'il est présent en base,
// on prend sa clé (le nom du système / de l'appareil)
if (type_appareil === value && jQuery.inArray(key, arr) !== -1) {

// Si le nom de l'OS (correspondant à la clé) correspond avec celui soumis au formulaire,
// on le pré-sélectionne grâce à l'attribut selected
if (nom_os !== 0 && nom_os === key) {

$('#lst_appareils').append('<option value="' + key + '" selected>' + key + '</option>');
$("#lst_appareils option:eq(0)").text('-');
//$('#zone_lst_appareils').show();
} else { // Sinon on rajoute les autres normalement

$('#lst_appareils').append('<option value="' + key + '" >' + key + '</option>');
$("#lst_appareils option:eq(0)").text('-');
//$('#zone_lst_appareils').show();
}
}
});
}

// On l'appelle par défaut
afficher_lst_appareils();

// Gestion de l'affichage des appareils selon le type d'appareil sélectionné
$('#lst_types_appareils').on('change', function() {

afficher_lst_appareils();
var nom_os = 0;
});

谢谢!

(这是我的 HTML,以防万一。)

<div class="form-group">

<label class='col-xs-4 col-md-2 col-lg-2 control-label'>Type d'appareil :</label>

<div class='col-xs-8 col-sm-8 col-md-4 col-lg-4'>

<select name='lst_types_appareils' id="lst_types_appareils" class='form-control'>
<option value='tous' <?php if( isset( $valeurs_form[ 'lst_types_appareils'] ) && $valeurs_form[ 'lst_types_appareils']==='' ) echo 'selected'; ?> >Tous</option>
<option value='desktop' <?php if( isset( $valeurs_form[ 'lst_types_appareils'] ) && $valeurs_form[ 'lst_types_appareils']==='desktop' ) echo 'selected'; ?>>Desktop</option>
<option value='mobile' <?php if( isset( $valeurs_form[ 'lst_types_appareils'] ) && $valeurs_form[ 'lst_types_appareils']==='mobile' ) echo 'selected'; ?> >Mobile</option>
</select>

</div>

<div id='zone_lst_appareils'>

<label class='col-xs-4 col-md-2 col-lg-2 control-label' for='lst_appareils'>Liste des systèmes :</label>

<div class='col-xs-8 col-sm-8 col-md-4 col-lg-4'>
<select name='lst_appareils' id="lst_appareils" class='form-control'>
<option value="0">Sélectionnez un type d'appareil</option>
</select>
</div>
</div>

</div>

我让法语评论,如果你想翻译它,就告诉我。

哦,我忘了告诉第二个选择应该在第一个选择值的函数中打印。

最佳答案

根据选择获取设备类型(移动或桌面)的最简单方法是:

  var lst_appareils_assoc = {

'Windows 10' : 'desktop',
'Windows 8.1' : 'desktop',
'Windows 8' : 'desktop',
'Windows 7' : 'desktop',
'Windows Server 2003/XP x64' : 'desktop',
'Windows XP' : 'desktop',
'Windows 2000' : 'desktop',
'Windows ME' : 'desktop',
'Windows 98' : 'desktop',
'Windows 95' : 'desktop',
'Windows 3.11' : 'desktop',
'Windows Vista' : 'desktop',
'Linux' : 'desktop',
'Ubuntu' : 'desktop',

'Mac OS X' : 'mobile',
'Mac OS 9' : 'mobile',
'iPhone' : 'mobile',
'Android' : 'mobile',
'iPod' : 'mobile',
'iPad' : 'mobile',
'BlackBerry' : 'mobile',
'Mobile' : 'mobile'

};

var selection = 'Windows 10';

var result = lst_appareils_assoc[selection];

alert(result);

通过在方括号中传递字符串“Windows 10”(或任何其他字符串),它将查找值,而无需循环每个项目。这使得它像一个简单的字典一样工作。

关于javascript - 在JS中选择数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41378225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com