Identifying the Problem

If you inspect the HTML, you'll notice a key difference. In Tiki 27, your input field had additional classes applied:

Tiki 27
Copy to clipboard
input id="customSearchBezeichnung" class="form-control ui-autocomplete-input" autocomplete="off"

But in Tiki 29, those autocomplete-related attributes are missing:

Tiki 29
Copy to clipboard
input id="customSearchBezeichnung" class="form-control"

This is your first clue that the autocomplete initialization is no longer working as expected.

Why This Happens: Tiki's Move from jQuery to Element Plus

Starting with Tiki 28, the Tiki development team made a significant architectural change by replacing jQuery-based UI components with Element Plus, a modern Vue.js component library. This modernization effort affects several features, including the autocomplete system.

The reasoning behind this change makes sense: Vue.js and Element Plus offer better performance, improved accessibility, and a more maintainable codebase for the future. However, it also means that custom JavaScript code written for older Tiki versions may need to be updated.

The old jQuery-based .tiki("autocomplete", ...) method has been deprecated and replaced with a new global autocomplete() function that uses Vue.js under the hood. The backend endpoint has also changed from the AJAX services controller to a dedicated list-tracker_field_values_ajax.php script for tracker field autocomplete.

The Solution

If you had autocomplete code like this in Tiki 27:

Tiki 27
Copy to clipboard
{JQ()} $("#customSearchTRACKERFIELD_PERMANAME").tiki("autocomplete", "trackervalue", { fieldId: TRACKER_FIELD_ID }); {JQ}

You need to update it to the new syntax for Tiki 29:

Tiki 29
Copy to clipboard
{JQ()} autocomplete($("#customSearchTRACKERFIELD_PERMANAME")[0], "trackervalue", { fieldId: TRACKER_FIELD_ID }); {JQ}

Key changes

Tiki 27 (Old) Tiki 29 (New)
$(selector).tiki("autocomplete", type, options) autocomplete(element, type, options)
jQuery object DOM element (use 0)
jQuery UI based Element Plus / Vue.js based

Important Notes

  • Pass the DOM element directly using 0, not the jQuery object
  • The type parameter remains the same ("trackervalue", "pagename", "username", etc.)
  • For tracker fields, continue using { fieldId: YOUR_FIELD_ID } in the options
  • Make sure Element Plus autocomplete is enabled in Admin → Features → Interface
  • Ensure your tracker field still has the "Autocomplete" option set to "Yes" in the field settings

Need Help with Your Tiki Upgrade?

Upgrading Tiki can be challenging, especially when breaking changes affect your customizations. Even seemingly small changes like this autocomplete update can take hours to diagnose and fix if you don't know where to look.

At OpenSource Solutions, the experts in Tiki Wiki for SMEs and Enterprises, we specialize in Tiki Wiki CMS Groupware and have helped organizations worldwide successfully migrate, customize, and maintain their Tiki installations. Our team stays up-to-date with every Tiki release, so we know exactly what changes to expect and how to handle them.

Whether you're facing upgrade issues, need custom development, training, or want ongoing support for your Tiki site, our team of experts is here to help you get the most out of your Tiki investment.

Don't let technical issues slow you down. Contact us today for a free consultation and let us handle your Tiki challenges so you can focus on what matters most—your business.