2015-05-13 6 views
0

В моей текущей программе я пытаюсь вытащить значение цены и значение = "". Я знаю, что мне нужно как-то внедритьСохранение атрибутов в значениях

$(this).attr() 

но он не тянет правильную информацию. Я пытаюсь объявить значение, называемое id, для названия места и стоимости стоимости седла при каждом выборе флажка. Какие-либо предложения?

https://jsfiddle.net/pnuqyyqh/5/

ответ

1

Следующий код поможет вам начать работу:

$(function() { 
    $("input[type=checkbox]").on("change",function(){ 
     getPropChecked = $(this).prop("checked"); 
     if(getPropChecked) 
     { 
      getId = $(this).prop("id"); 
      getValue = $(this).attr("value"); 
      getDataPrice = $(this).attr("data-price"); 
      alert("getId: " + getId + 
       " getValue: " + getValue + 
       " getDataPrice:" + getDataPrice); 
     } 
    }) 
}) 

Please refer to this stack overflow post

+0

Итак, мне нужно было использовать функцию .on(). это на самом деле первый раз, когда я видел/использовал «input [type = checkbox]» до – narue1992

+0

Вам не нужно использовать 'on'. Вы просто использовали '$ (this)' в неправильном месте, так как он был вне области видимости. –

+0

oh ok. Кроме того, почему вам не нужно было объявлять var перед getId? – narue1992

0

Вы получаете атрибут данных с $(this).data('price'); и его значение с $(this).val()

+0

Вейрдест вещь. Когда я использую $ (this) .val(), я получаю 'Не могу прочитать свойство 'toLowerCase' неопределенного 'из моей мета:' '?? – narue1992

+1

Это не странно, '$ (this)' ссылается на ввод флажка на функцию обратного вызова. Функция обновления не знает, что означает '$ (this)'. Я собираюсь отредактировать ваш jsFiddle. –

+1

Уже редактировал jsFiddle. Теперь работает. –

Смежные вопросы