为了账号安全,请及时绑定邮箱和手机立即绑定

JQUERY 迭代数组

JQUERY 迭代数组

largeQ 2023-12-04 17:14:39
我的网站需要一些帮助。我正在尝试使用数组和两个不同的输入字段进行迭代。我的 html 文件包含如下内容:<input name="comune" type="text" id="comune" list="comuni" /><datalist id="comuni"></datalist><input name="provincia" type="text" id="provincia" />假设我的数组是这样的:    var comProv = {    'Pisa' : 'PI',    'Firenze' = 'FI',    'Roma' = 'RM'}我想用数组的键填充数据列表,并且在选择特定选项时,我想在第二个输入字段中显示同一数组项目的值。我尝试使用这段代码    $('#comune').keyup(function(){        var options = '';        for(var i = 0; i < comProv.length; i++){            options += '<option value="'+comProv[i]+'" />';        }        document.getElementById('comuni').innerHTML = options;    });我停下来,没有转到第二个主题,因为我很堆栈。有人可以帮忙吗?先感谢您。
查看完整描述

2 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

它是一个对象,而不是一个数组。您可以使用 迭代它$.each()。


$('#comune').keyup(function(){

    var options = '';

    $.each(comProv, function(key, value) {

        options += `<option value="${value}">${key}</option>`;

    });

    $('#comuni').html(options);

});


查看完整回答
反对 回复 2023-12-04
?
临摹微笑

TA贡献1982条经验 获得超2个赞

首先,它不是一个数组,它是一个对象。其次,如果您使用 jQuery 库,则需要使用“for...in”循环来循环对象或 $.each。最后但并非最不重要的一点是,您的对象中有拼写错误。最后,尝试一下此代码片段中的代码:


$(function(){


    var comProv = {

        'Pisa' : 'PI',

        'Firenze':'FI',

        'Roma': 'RM'

    }


    $('#comune').keyup(function(){

        var options = '';

        $.each(comProv, function(key, value) {

            options += `<option value="${value}">${key}</option>`;

        });

        $('#comuni').html(options);

    });



})

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<input name="comune" type="text" id="comune" list="comuni" />

<datalist id="comuni">

</datalist>

<input name="provincia" type="text" id="provincia" />


查看完整回答
反对 回复 2023-12-04
  • 2 回答
  • 0 关注
  • 68 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信