2013-04-17 20 views
6

Tôi có thành phần select2 góc-ui trên trang của mình. Nó hoạt động tốt khi người dùng gõ một cái gì đó trong (nó sử dụng ajax để tải dữ liệu).angular-ui select2 initSelection không được gọi là

Nhưng chức năng initSelection không bao giờ được gọi. Đây là đối tượng cấu hình mà tôi chuyển vào select2

{ 
    multiple: true, 
    minimumInputLength: 1, 
    tokenSeparators: [",", " "], 
    createSearchChoice: function (term) { 
     return term; 
    }, 
    width: 'resolve', 
    ajax: { 
     url: '...', 
     method: 'GET', 
     quietMillis: 100, 
     data: function (term, page) { 
      ... 
     }, 
     results: function (data, page) { 
      ... 
     } 
    }, 
    initSelection: function (element, callback) { 
     console.log('initSelection'); 
     return $.ajax({ 
      url: "...", 
      type: "GET", 
      data: { 
       ... 
      }, 
     }).done(function(data) { 
      console.log(data); 
      return callback(data); 
     }); 
    } 
}; 

"initSelection" không bao giờ được ghi vào bảng điều khiển. Tại sao không gọi initSelection?

Trả lời

3

initSelection chỉ được gọi khi có đầu vào ban đầu được xử lý (xem hộp màu xanh ngay trên here - nơi gần nhất để liên kết tới, tôi sợ). Tôi nghi ngờ điều này có thể là vấn đề của bạn từ cách câu hỏi được diễn đạt.

+0

Trong trường hợp của tôi, tôi cũng đặt mô hình ng thành thứ gì đó và vẫn không thể gọi initSelection –

0

Tôi có thể thực hiện giá trị đã chọn làm Thời gian chỉnh sửa bằng cách sử dụng InItSelection trong Angular Js.

$scope.partInitSelection = function (element, callback) { 
     var resultArray = []; 
     resultArray.push({ id: "1", text: "hi" }); 
     $scope.HospitalizationView.HospitalName = resultArray[0]; 
     callback(resultArray[0]); 
    }; 
Các vấn đề liên quan