2014-11-19 3 views
0

다른 값으로 체크 포인트 값을 복제합니다. 새 요소를 클릭하면 해당 요소를 제거하고 필터를 선택해야합니다. 실수를 찾도록 도와주세요.제거 : 입력란에서 버튼의 텍스트를 선택하십시오.

$('.views-exposed-widget').on('change', 'input', function() { 
     var self = $(this), 
      name = this.name, 
      text = self.closest('.form-type-radio').find('label[class="option"]').text(), 
      target = $('.duplicate-filter').find('[data-for="'+ name +'"]'); 

     if (target.length == 0){ 
      target = $('<span class="o_filt" data-for="'+name+'"></span>').appendTo('.duplicate-filter'); 
     } 
     target.text(text); 

     $('.o_filt').on('click', function(){ 
      var l = $(this).text(); 
       m = $('.views-exposed-form .form-type-radio label.option'); 
      $(this).remove(); 
      m.each(function(){ 
       if($(this).text().indexOf(l)!=-1){ 
        $(this).closest('input[type="radio"].dls-radio').removeAttr('checked');      
       } 
      }); 
     }); 

    }); 

예 : 그래서 같은 http://jsfiddle.net/e59ogp8a/5/

+0

선택을 사용하면 관련 라디오 버튼을 선택 취소 할 수 있습니다. 마지막 질문과 동일하지만 다른 방향으로 가고 ... – Rhumborl

+0

아무런 체크 박스가 보이지 않습니다 ... – Tomanow

+0

@Tomanow its stylized. [type = "radio"] 입력에서 속성을 제거해야합니다. dls-radio –

답변

1

사용 .prop('checked', false) : 현재를 대체하는 데이터 for``에서`name`을 사용하는 같은 방법으로

 $('.o_filt').on('click', function() { 
      var l = $(this).text(); 
      $(this).remove(); 
      $('input[name="' + $(this).data('for') + '"]').prop('checked', false); 
     }); 

FIDDLE

+0

고마워요 !!! 그것은 나를 도왔다. –

관련 문제