We all are seeing that Salesforce1 is evolving with every
passing day and there is yet lot to be done. One of the many items is a custom
lookup field on a Visualforce page.
Lightning design systems do provide us with the CSS we can
use to create lookup fields the logic has to be written by the developer. Below
is a basic example that can be used to implement the basic autocomplete version
of the lookup field.
The auto complete text box is implemented using the CSS provided by Salesforce1 lightning design.
The Visualforce page uses Visualforce remoting to fetch records based on the user input. A call to the controller method is made every time a keyup event is fired and the results are updated.
Great post, thanks! Could you please tell me how to access the contact ID of the selected element? j$('#lookup').val() returns the name of the selected contact but i would like to know the ID. Thanks again.
ReplyDeleteThanks Dev. Id is saved as one of the attributes hence you can retrieve using that attribute value.
ReplyDeleteTry
var id = $('#lookup').attr('aria-activedescendant');
'<a id="' + this.id in your code doens´t work, so record id is not saved on the <a> element. Also changing your debug "console.log(this);" in "console.log(this.id);" i see that this.id is not the record id but undefined I tested in google Chrome.Any solution? Thank you.
DeleteHere is the fixed and working code which alerts the Contact name and Id when you select a contact name: https://github.com/gulshanmiddha/mobile_autocomplete
DeleteGulshan, thanks a lot for that awesome post!
ReplyDelete(although it will be cool to remove the search words div if the input is blank, and also not doing a search on less than 2 letters.. But really great post so 10Q!!)
can you please provide jquery_all static resource
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteThe Venetian Hotel Las Vegas - JSHub
ReplyDeleteThe Venetian Las 남양주 출장안마 Vegas hotel 제천 출장안마 features an outdoor 전라남도 출장안마 pool and 대구광역 출장샵 spa, plus an indoor pool. Guests will be able to 청주 출장안마 enjoy various amenities such as complimentary WiFi