2016-08-26 4 views
0

Я создаю управление типом календаря с моим html-приложением, и я использовал формат таблицы для достижения. В этом календаре я добавил атрибут даты в TD элементов и мой дом будет, как нижеJQuery Selector- Получение элемента на основе значения атрибута

<td date="Tue Aug 30 2016" class="current">30</td> 
<td date="Mon Aug 29 2016" class="current">29</td> 

Я добавил дату атрибутов, как это все даты в этом месяце календаре.

Я хочу использовать этот атрибут date с помощью селектора jQuery для извлечения этого конкретного элемента td. Кроме того, моя значение атрибута дата получит снизу код

new Date("11/05/2016").toDateString(); // out will like "Sat Nov 05 2016" 

Я хочу, чтобы выбрать элементы, некоторые вещи, как это

$('.current[date=new Date("11/05/2016").toDateString()]') 

// здесь я установить 11/05/2016 вручную, но это будет получить из локальной переменной хранилища.

Спасибо за любые предложения

ответ

1

Вам нужно сцепить:

$('.current-month[date="'+new Date("11/05/2016").toDateString()+'"]') 
+0

Я получаю такой аранжировку. Синтаксическая ошибка, непризнанное выражение: .current-month [date = Fri Aug 26 2016] –

+0

его работы поблагодарить u –

+0

Рад помочь вам. – Lucy

1

Как new Date("11/05/2016").toDateString() должна быть выполнена, Вам необходимо сцепить результат в селекторе

$('.current-month[date="'+new Date("11/05/2016").toDateString()+'"]') 

Я бы порекомендовал вам использовать data-* префиксные атрибуты для хранения произвольных данных.

<td data-date="Tue Aug 30 2016" class="current">30</td> 
+0

спасибо, но getSyntax error, непризнанное выражение: .current-month [date = Fri Aug 26 2016] –

+0

благодарит свои работы –

0

Вот как я бы это сделать:

  1. Создайте функцию, которая перебирает все элементы td.current и сравнивает поле даты данные с датой поставки.

  2. Когда есть соответствие, верните этот элемент.

    функция getDateElement (date_selector) { $ ('td.current'). Каждая (функция() { если ($ (это) .data ('дата') === date_selector) { возвращение $ (это); } }); }

    getDateElement ('Вт 30 авг 2016');