Как я могу создавать всплывающие сообщения на нескольких языках в SweetAlert2?

Когда ты делаешь свой


person Lim    schedule 08.08.2018    source источник
comment
Вам нужно передать сообщение в сладком оповещении в соответствии с выбранным языком.   -  person Lim    schedule 08.08.2018
comment
@Riddhi Потому что я смог настроить confirmButtonText, изменив его с Got it! to ‹div id = swal2-confirmBtnTxt style = color: # 000000› Понятно! ‹/div›, мне интересно, можно ли создавать многоязычные всплывающие сообщения в SweetAlert2. Я не задавал этот вопрос, ничего не пробуя ...   -  person Riddhi    schedule 08.08.2018
comment
@J L Я все равно не голосовал против!   -  person Lim    schedule 08.08.2018
comment
@Riddhi ой! спасибо, что дали мне знать :)   -  person Riddhi    schedule 08.08.2018
comment
Почему еще один голос против ....?! Для тех, кто отрицает, пожалуйста, дайте мне объяснение ... Я изо всех сил старался дать объяснение своей проблемы. Буду очень признателен за любую помощь ...   -  person Lim    schedule 08.08.2018
comment
Спасибо! Выделение правильного значения из массива при создании SWAL не обновляло автоматически содержимое при нажатии английских или корейских кнопок после загрузки веб-страницы. Итак, я принудительно обновлял веб-страницу при нажатии английской или корейской кнопки. Это не идеальное решение. Но пока можно двигаться дальше! :)   -  person Lim    schedule 09.08.2018


Ответы (2)


Элементы SweetAlert еще не будут загружены на страницу ... Вы должны либо вызвать это снова сразу после вызова SweetAlert, либо добавить какой-то прослушиватель событий, который делает это, когда элементы добавляются динамически.

$(".lang").each(function(index, element) {

В качестве альтернативы вы можете просто вытащить правильное значение из массива при создании SWAL;

На основе ответа Милни в этом сообщении & Ответ Адама Азада в здесь, мне удалось создать многоязычный веб-сайт.

confirmButtonText: arrLang[lang]['thxMsgConfirmBtnTxt']
person Milney    schedule 09.08.2018
comment
Объяснение моего кода:
- нажатие кнопки "тест": вы можете заставить пять кругов появляться или исчезать.
- нажатие кнопки "английский": содержание изменяется на английский (за исключением содержания в _1_ всплывающих сообщениях).
- нажатие "корейский" < / b> кнопка: содержимое изменяется на корейский (за исключением содержимого _2_ всплывающих сообщений).

На основе ответа Адама Азада в этом post, я начал работать над созданием многоязычного веб-приложения, сохраняющего выбранный пользователем язык. Я могу успешно переключаться между английским и корейским языками для всего содержимого в моем веб-приложении, за исключением содержимого _3_ сообщений в _4_.

- После настройки я добавил _5_ и _6_ для каждого контента, который я хотел бы переводить туда и обратно.

Поскольку мне удалось настроить _7_, изменив его с _8_ на _9_, я подумал, что могу просто добавить _10_ и имя ключа для создания всплывающих сообщений на нескольких языках в SweetAlert2.

- Изменено с _11_ на _12_: ничего не отображается.
- Форма изменена с _13_ на _14_: вместо текста отображается код во всплывающем сообщении.
- Изменено с _15_ на _16_: ничего появляется.

Кроме того,
Я пробовал _17_ и _18_.
Он отлично справился с загрузкой страницы. Но, когда я нажал кнопку другого "языка", язык в _19_ сообщениях не изменился, а содержимое, не содержащее _20_ сообщений, было изменено на другой язык.

Чего я хотел бы достичь:
- Измените все содержимое на английский при нажатии кнопки «Английский», включая содержимое _21_ сообщений
- Измените все содержимое на Корейский, когда нажимается кнопка "Корейский", включая содержимое _22_ сообщений

Я собирался включить свой код в это сообщение через фрагмент кода. Но это дало мне сообщение об ошибке, и мой код не работал.

Итак, посмотрите на этот JSfiddle: https://jsfiddle.net/hlim188/15no3zyd/69/.
(Нерабочие коды я помещаю в комментарии.)
< br> Я был бы очень признателен за любое понимание решения этой проблемы. Заранее спасибо! :-)


Объяснение "проголосовать против":
Используйте свои отрицательные голоса всякий раз, когда вы сталкиваетесь с вопиюще небрежным постом, не требующим усилий, или ответом, который является явно и, возможно, опасно неверным.
- Я приложил много усилий до и во время публикации этого вопроса ...
- Вместо того, чтобы голосовать против, дайте мне совет по решению этой проблемы ...

Первое место занимает право голоса, потому что это то, на чем вы должны сосредоточиться : продвижение отличного контента на вершину. Голосование "против" следует использовать в крайних случаях. Это не заменяет общение и редактирование. - person Lim; 09.08.2018

ШАГ 1: извлечение правильного значения из массива при создании SweetAlert2 сообщений. (например, confirmButtonText: arrLang[lang]['thxMsgConfirmBtnTxt'])

ШАГ 2. Поскольку при нажатии кнопки "Английский" или "Корейский" автоматически не обновлялось содержимое в SweetAlert2 сообщениях, я принудительно обновлял веб-страницу, когда "Английский" или кнопка "Корейский" была нажата путем добавления value="Refresh Page" onClick="window.location.reload()".

Я хотел включить код с помощью фрагмента кода. Но появилось сообщение об ошибке, хотя я скопировал и вставил код из JSFiddle. Проверьте рабочий пример здесь: https://jsfiddle.net/hlim188/15no3zyd/80/.

Если вы хотите узнать подробную информацию о том, как я его создал, прочтите этот запись в блоге :)

Почему против ...? Пожалуйста, дайте мне объяснение ... Если вы думаете, что это дубликат, скажите, пожалуйста, почему. Я бы с удовольствием решил эту проблему и не смог найти ответ даже после прочтения нескольких сообщений в StackOverflow.

person Lim    schedule 13.08.2018