Georg
Georg

Reputation: 498

How to change the language for alerts in chosen.js?

When you type in an unavailable option in the multiple select box in chosen.js, it will generate the output 'No results match "query"'. Is there a way to change the output language? See the text on the bottom.

Upvotes: 8

Views: 9327

Answers (4)

Andreas Louv
Andreas Louv

Reputation: 47117

If you look in the source code of chosen.js you will find these:

AbstractChosen.default_multiple_text = "Select Some Options";

AbstractChosen.default_single_text = "Select an Option";

AbstractChosen.default_no_result_text = "No results match";

AbstractChosen is using the global namespace so think you can simply say:

AbstractChosen.default_no_result_text = 'My default text';

And be sure to set the default_no_result_text before initializing any components.

You can later on overwrite this value on specific components: (Assuming you are using jQuery):

config.js

AbstractChosen.default_no_result_text = 'default no result text:'

app.js

$(select).chosen({
    no_result_text: 'specific no result text for this component'
});

The API is changed and the above wont work

Upvotes: 1

Marco Marsala
Marco Marsala

Reputation: 2460

If you place that line of code in any place, browser console will say:

No way to override default texts globally. You have to specify them for every chosen() call.

Upvotes: 0

gandarez
gandarez

Reputation: 2662

You're able to change 3 messages. Single selection, Multiple selection and no results text.

$('#ID').chosen({
    no_results_text: "Sem resultados para",
    placeholder_text_single: "Selecione uma opção",
    placeholder_text_multiple: "Selecione as opções"
});

In this case it has been translated to Portuguese.

Upvotes: 13

Bibhas Debnath
Bibhas Debnath

Reputation: 14939

You can set default message for it -

// jQuery version: https://github.com/harvesthq/chosen/blob/master/example.jquery.html
$(".chzn-select").chosen({no_results_text: "Translated No results matched"});

// Prototype version: https://github.com/harvesthq/chosen/blob/master/example.proto.html
new Chosen($$(".chzn-select")[element_index],{no_results_text: "Translated No results matched"});

Except this, there doesn't seem to be any i18n support.

Upvotes: 6

Related Questions