2013-03-28 69 views
1

我使用TextExt:http://textextjs.com/修改Textext建議

這是目前我的代碼:

$('#company').textext({ 
    plugins : 'autocomplete filter ajax', 

    autocomplete : { 
     render : function (suggestion) { 
      var organization = suggestion.split('#'); 

      return '<strong>' + organization[0] + '</strong><br />' + organization[1]; 
     }        
    }, 

    ajax : { 
     url : '/organizations.json', 
     dataType : 'json', 
     cacheResults : true 
    } 
}); 

這是什麼,是由JSON輸出:

[「組織#地址「]

它目前工作正常,但是當用戶點擊一個建議時,文本框包含「組織地址」。我的問題是,如何修改textext,以便當用戶點擊某個建議時,它只會將「Organization」填充到文本框中,而不是整個json建議。

如果這不清楚,我可以進一步解釋。

感謝

+0

我對你的問題沒有很好的把握。所有的建議總是附加「#Address」?還是隻有這個?我的意思是不能剝奪最後的角色,如果他們一直都是一樣的話 –

回答

0

不知道如果你仍然想要一個答案(給出的問題是九個月前問),但萬一這裏是基於一些代碼,我在一個類似的情況寫了我的建議:

$('#company').textext({ 
    plugins : 'autocomplete filter ajax', 

    autocomplete : ...as before 

    ajax : ... as before 

    // new bit 
    ext: { 
     selectFromDropdown: function() { 
      var self = this; 
      var suggestion = self.selectedSuggestionElement().data('text-suggestion'); 
      var organization 

      if (suggestion) { 
       organization = suggestion.split('#'); 

       self.val(self.itemManager().itemToString(organization[0])); 
       self.core().getFormData(); 
      } 

      self.trigger('hideDropdown'); 
     } 
    } 
}); 

我還沒有測試過這個特定版本的代碼,所以它可能需要一些小小的調整。

另一種選擇可能是編寫自己的ItemManager。