我正在使用多選框的插件。從理論上來說,這個問題可以用於任何其他帶有選項的插件。 插件有一些選項,其中包括語言字符串。我想創建一組基於語言的選項 - 在此例中爲<html lang="">
屬性。插件選項 - 如何創建多個選項集
我已經試過這一點:
var multipleSelectLang = function() {
var da = {
placeholder: 'Vælg flere...',
selectAllText: 'Vælg alle',
width: '100%'
};
var en = {
placeholder: 'Select multiple...',
width: '100%'
};
return ($('html:lang(en)')) ? en : da;
};
$('select[multiple]').multipleSelect(multipleSelectLang());
所以根據<html lang="en">
或<html lang="da">
它應該運行帶有相應選項的插件。 正如您在this Fiddle中看到的那樣,即使語言設置爲"da"
,它也會顯示英語選項。
我希望我的問題有道理。任何想法有什麼不對?
$('html').attr("lang", "da");
// Multiple select functions - work fine.
// $('select[multiple]').multipleSelect({
// placeholder: "Vælg flere...",
// selectAllText: 'Vælg alle',
// width: '100%'
// });
var multipleSelectLang = function() {
var da = {
placeholder: 'Vælg flere...',
selectAllText: 'Vælg alle',
width: '100%'
};
var en = {
placeholder: 'Select multiple...',
width: '100%'
};
return ($('html:lang(en)')) ? en : da;
};
$('select[multiple]').multipleSelect(multipleSelectLang());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/multiple-select/1.2.0/multiple-select.js"></script>
<select multiple="multiple">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
可以執行'$( 'HTML:郎(EN)')'在瀏覽器的工具,結果是一個對象,沒有布爾。我不熟悉插件,也許測試'$('html:lang(en)')。length> 0'而不是布爾測試? – Gunnar
http://stackoverflow.com/questions/5031531/javascript-reading-lang-attribute-in-html-tag – mplungjan