Перейти к содержимому


Строка в строке в строке - очередной дурацкий вопрос.


  • Вы не можете ответить в тему
Сообщений в теме: 2

#1 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 15 November 2012 - 01:03 AM

Не могу разобраться, как грамотно прописать кавычки в значении атрибута HTML-тэга, где внутри кавычек, обрамляющих значение атрибута HTML-тэга находятся кавычки, обрамляющие аргумент jquery, в котором внутри в свою очередь находятся кавычки, обрамляющие целевую текстовую маску.

Конкретика такова:
<input onclick='$("input[id^='cat_enable_']").attr({checked:true});'>
но такое написание неверно.

Можно вынести в отдельную функцию и это работает, но как-то не спортивно...
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#2 eugene_wb

    Продвинутый пользователь

  • Модераторы
  • 827 сообщений
Репутация: 167
Мастер

Отправлено 15 November 2012 - 10:53 AM

как один из вариантов попробовать заменить " на &quote; и обрамляющие одинарные изменить на двойные
еще вариант сделать экранирование для одинарных кавычек \'cat_enable_\'
  • 0
Изображение Изображение Изображение

#3 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 15 November 2012 - 10:00 PM

Не, &quote; там вообще не катят. Это не выдача на экран, как мне кажется. Как написано - так в ява-машину и отдается. Отладчик тут же ругается на неверный синтаксис - &quote;

<input onclick='$("input[id^='cat_enable_']").attr({checked:true});'>

Правильный вариант (один из) оказался таков:
<input onclick='$("input[id^=\"cat_enable_\"]").attr({checked:true});'>
Т.е. сводим задачу к стандартной - вложение строки в строку, без двойного вложения :).

Наоборот, т.е. <input onclick="$('input[id^=\'cat_enable_\']').attr({checked:true});"> тоже работает

Полезный, кстати, синтаксис использования jquery, раз уж он все равно практически всегда грузится. Позволяет работать с элементами HTML (в данном случае input), у которых id начинается (а если написать не id^, а id$, то заканчивается) некой строкой (в данном случае cat_enable_), т.е. окучить все элементы, удовлетворяющие маске.
  • 1
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)