javascript - 如果使用jquery ajax表中的数据,如何动态选择下拉列表

标签 javascript php jquery

我附上了一张 table 的图片。数据(语言和排名)通过 jQuery AJAX 从该表中获取。请检查数据列表的示例图像。

我的问题是在下拉列表中,我需要显示在页面加载时选择了检索数据(排名)。目前德语正确意味着排名显示 3,但英语下拉列表显示错误。但排名响应显示 alert(getRankingRate); 结果是 23

$.get("/language/ranking/get", function(responseDB){
        var getrankingDB = '';
        var getRankingRate = 0;
        var getRankingID   = 0;
        $.each(responseDB.selectLanguageRankingTagId,function(i, item) {
          getRankingID    = item.id;
          getRankingRate  = item.ranking;
          getLanguageName = item.title_en;
          getrankingDB += '<div class="row"><div class="col-md-8"><h4 style="background-color: lightgrey; border-radius: 10px; background-repeat: repeat; height: 30px; margin:5px 0px; padding:4px 5px;">'+getLanguageName+'</h4></div><div class="col-md-3" style="padding:5px;"><select class="form-control input-sm" id="getRankingLanguage_'+getRankingID+'"><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option></select></div></div>';
          $( ".loadlanguagemodal" ).html('<div class="modal-content"><div class="modal-header loadlanguagemodal"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button><h4 class="modal-title">Edit Languages</h4></div><div class="modal-body">'+getrankingDB+'<div class="appendRow"></div></div><div class="modal-footer"><div class="row"><select class="form-control input-sm"><option selected="selected">Add Language</option>'+optionLang+'</select></div><br><button type="button" class="btn btn-default" data-dismiss="modal">Close</button><button type="button" class="btn btn-primary">Save changes</button></div></div>').fadeIn( "slow" );
        //alert(getRankingID);
        $('#getRankingLanguage_'+getRankingID).val(getRankingRate);
        });
});

enter image description here enter image description here

最佳答案

您可以在这里大大简化事情并使用 jQuery 的行为来选择 <select>元素的选项由其“value”属性决定。这是一个示例:https://jsfiddle.net/avkj0qwm/

您的<select>元素应具有基于其 RankingID 的唯一 ID,例如:

<select class="form-control input-sm" id="getRankingLanguage_'+getRankingID+'">

然后您就可以定位正确的 <select><option>元素,例如:

$('#getRankingLanguage_'+getRankingID).val(getRankingRate);

希望这有帮助!如果您需要更多信息,请告诉我!

关于javascript - 如果使用jquery ajax表中的数据,如何动态选择下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33626094/

相关文章:

javascript - jQuery Textillate.js - 如何 "reset"元素 html 并重新启动动画

javascript - Socket.io 和 Redis Pub/Sub 不工作

php - Ajax post 请求仅在浏览器关闭并再次打开后才能通过

javascript - Laravel javascript 需要完美的滚动条

c# - CSS,如何仅在第一页加载时将最小高度/宽度设置为屏幕高度/宽度?

php - 为什么会出现此错误?语法错误或访问冲突 : 1066 Not unique table/alias: 'Employees'

php - 如何编写 MySQL PHP 嵌套查询

javascript - 如何使 JQuery 插件 "Rounded Corners"工作? (或提出更好的选择)

javascript - 将变量从 PHP 函数传递到 JS

jQuery:表单序列化、隐藏字段和不显示字段