Jquery 向选项添加数据属性

Jquery 向选项添加数据属性,jquery,Jquery,我有以下代码: $.ajax({ url: "ajax-ongkir.php?destination=" + subdistrictId + "&destination_type=subdistrict&weight=" + weight, dataType: "JSON", success: function(json) { for (var i = 0; i < json.length; i++) { var courierName =

我有以下代码:

$.ajax({
  url: "ajax-ongkir.php?destination=" + subdistrictId + "&destination_type=subdistrict&weight=" + weight,
  dataType: "JSON",
  success: function(json) {
    for (var i = 0; i < json.length; i++) {

      var courierName = json[i].name;
      var courierService = json[i].service;
      var courierTarif = json[i].tarif;

      $('.courier').append($('<option>', {
        value: courierName + ' ' + courierService + ' ' + courierTarif,
        text: courierName + ' - ' + courierService + ' - ' + courierTarif
      }));

      $('.courier').$('<option>').last().attr('data-tarif', courierTarif);

    }
  }
});
$.ajax({
url:“ajax ongkir.php?destination=“+substrictid+”&destination_type=substrict&weight=“+weight,
数据类型:“JSON”,
成功:函数(json){
for(var i=0;i
但这一行行不通:

$('.courier').$('<option>').last().attr('data-tarif', courierTarif);
$('.courier').$('.last().attr('data-tarif',courierTarif);
如何将
courierTarif
作为数据属性添加到
中?

这解决了我的问题

$('.courier option:last').attr('data-tarif', courierTarif);

你需要像这样尝试

$('.courier option[value=“3”]').attr('data-tarif',“hi”)

$('.courier选项[value=“3”]).attr('data-tarif',“hi”)

opt1
opt2
opt3

您使用了错误的选择

替换:

 $('.courier').$('<option>')
现在,您的
last()
选择器开始工作

$('.courier option').last().attr('dat-tarif',“hi”)

1.
2.
3.
$('.courier option')