Javascript lt) $('#mySelect')。选择({ 初始化:函数(){ var s=此; this.revertSettings.$children.each(function()){ $.extend(s.options[this.value],$(this.data()); }); } }); //然后重新阅读: $('#mySelect')。在('change',function()上{ var s=$('#mySelect')[0]。selectize;//获取select var data=s.options[s.items[0]];//获取活动选项的当前数据()。 警报('您的数据为:'+data.myparam); }); }) 我的选择1 我的选择2

Javascript lt) $('#mySelect')。选择({ 初始化:函数(){ var s=此; this.revertSettings.$children.each(function()){ $.extend(s.options[this.value],$(this.data()); }); } }); //然后重新阅读: $('#mySelect')。在('change',function()上{ var s=$('#mySelect')[0]。selectize;//获取select var data=s.options[s.items[0]];//获取活动选项的当前数据()。 警报('您的数据为:'+data.myparam); }); }) 我的选择1 我的选择2,javascript,selectize.js,Javascript,Selectize.js,使用此版本,您无需更改HTML。也适用于jQuery.data() //假设HTML看起来像: // //我的选择1 //我的选择2 // $(文档).ready(函数(){ //保留.data(默认情况下选择0.12.4版bug/library deletes.data) $('#mySelect')。选择({ 初始化:函数(){ var s=此; this.revertSettings.$children.each(function()){ $.extend(s.optio

使用此版本,您无需更改HTML。也适用于jQuery.data()

//假设HTML看起来像:
//    
//我的选择1
//我的选择2
//    
$(文档).ready(函数(){
//保留.data(默认情况下选择0.12.4版bug/library deletes.data)
$('#mySelect')。选择({
初始化:函数(){
var s=此;
this.revertSettings.$children.each(function()){
$.extend(s.options[this.value],$(this.data());
});
}	    
});
//然后重新阅读:
$('#mySelect')。在('change',function()上{
var s=$('#mySelect')[0]。selectize;//获取select
var data=s.options[s.items[0]];//获取活动选项的当前数据()。
警报('您的数据为:'+data.myparam);
});
})

我的选择1
我的选择2

你能发布你的代码吗?你是如何试图获取数据的?什么选项元素?完成。请重新查看该问题,以便在onChange回调中获取所选选项的
data-no\u/reams
?能否发布您的代码,说明您是如何获取
data-no\u/reams
?什么选项元素?完成。请重新查看问题,以便在onChange回调中获取所选选项的
data-no/u/u/u/u/u/reams
?能否给出完整示例。使用“var data=this.options[val];”的onChange技巧/方法非常好。这正是我为所选项目重用完整AJAX数据集所需要的。谢谢。使用“var data=this.options[val];”的onChange技巧/方法非常好。这正是我为所选项目重用完整AJAX数据集所需要的。非常感谢。
$('#product_id').append('<option data-no_of_reams="'+data[i].no_of_reams+'" value="'+data[i].id+'">'+data[i].c_code+'</option>');
function getAllCCode(){
$.ajax({
    url: '/inward/allccode/',
    type: 'GET',
    datatype: 'JSON',
    success: function(data){
        $('#product_id').append('<option value="">Select</option>');
        for (var i in data){
            $('#product_id').append('<option data-size="'+data[i].size_h+'X'+data[i].size_w+'" data-radius="'+data[i].radius+'" data-type="'+get_type(data[i].type)+'" data-meal="'+get_mill(data[i].mill)+'" data-variety="'+get_code(data[i].variety)+'" data-ream_weight="'+data[i].ream_weight+'" data-no_of_reams="'+data[i].no_of_reams+'" value="'+data[i].id+'">'+data[i].c_code+'</option>');
        }
    }
}).done(function() {
    $('#product_id').selectize({
        onChange : function(){
            alert('hello');
        }
    });
});
$.ajax({
    url: '/inward/allccode/',
    type: 'GET',
    datatype: 'JSON',
    success: function(data) {
        $('#product_id').append('<option value="">Select</option>').data('data', data);
        for (var i in data) {
            $('#product_id').append('<option value="' + data[i].id + '">' + data[i].c_code + '</option>');
        }
    }
}).done(function() {
    $('#product_id').selectize({
        onChange: function(value) {
            var selectedObj = this.$input.data('data').filter(function(el) {
                return el.id === Number(value);
            })[0];
            alert(selectedObj.no_of_reams)
        }
    });
});
<select name="product_id" id="product_id">
  <option value="123" data-data="{id:'123',no_of_reams:'1212',name:'Great Expectations'}">Great Expectations Book</option>
  <option value="987" data-data="{id:'987',no_of_reams:'7766',name:'Great Gatsby'}">Great Gatsby Book</option>
</select>

<script>
  $('#product_id').selectize({
   valueField: 'id',
   labelField: 'name',
   render: {
     item: function(item, escape) {
       return '<div>' +
         '<div class="title">' + escape(item.name ? item.name : 'no title') + '</div>' +
         '<div class="description">' + escape(item.description ? item.description : 'no description') + '</div>' +
         '</div>';
     },
     option: function(item, escape) {
       return '<div>' +
         '<div class="title">' + escape(item.name ? item.name : 'no title') + '</div>' +
         '<div class="description">' + escape(item.description ? item.description : 'no description') + '</div>' +
         '</div>';
     }
   },
   onChange: function(val) {
     var data = this.options[val]; // <-- This is how to pull data-data from the original options
     console.log(data); // stores the data-data as a json object
     alert(data.no_of_reams);
   }
  });
</script>
<select name="product_id" id="product_id">
  <option value="123" data-data="<?php echo htmlentities(json_encode(array('id' => 123, 'no_of_reams' => 1212, 'name' => 'Great Expectations'))) ?>">Great Expectations Book</option>
  <option value="987" data-data="<?php echo htmlentities(json_encode(array('id' => 987, 'no_of_reams' => 7766, 'name' => 'Great Gatsby'))) ?>">Great Gatsby Book</option>
</select>