2014-11-24 3 views
1

이전 질문을 통해 살펴 보았지만 많은 도움을 얻을 수 없습니다.Jquery - 부모 요소의 데이터 ID를 가져 오는 중

사용자가 양식 ('# edit-form')을 제출하면 data-id를 통해 다음 modal로 보내는 다음 html 코드가 있습니다. 이전에 상기 데이터 -id.

<form class="form-horizontal" id="edit-template-form"> 
    <div class="modal-body"> 
     <div class="form-group"> 
      <label for="edit-group-name" class="col-sm-2 control-label">Group name</label> 
     <div class="col-sm-10"> 
      <input type="text" name="groupName" class="form-control" id="edit-template-name" placeholder="New Group Name"> 
     </div> 
    </div> 
    <input type="hidden" id="edit-template-id"> 
    </div> 
    <div class="modal-footer"> 
     <button type="button" class="md-close" data-dismiss="modal">Cancel</button> 
     <button type="submit" class="btn btn-primary btn-flat">Save Changes</button> 
    </div> 
</form> 

jQuery를

$('#edit-template-form').submit(function (e) { 
    e.preventDefault(); 
    var data = { 
     id: $(this).parent().val($(this).data('id')), 
     name: $('#edit-template-name').val() 
    }; 
    console.log(data); 
    return false; 
}); 
+0

양식 컨트롤을 제출하려면 이름이 있어야합니다. ID는 선택 사항이며 대개 불필요합니다. – RobG

답변

1

this 키워드가 데이터를 말한다 :

여기 모달 내부 >>

<button type="button" class="edit-group" title="Edit Group" data-id="<?php echo $group->id ?>" data-name="<?php echo $group->groupName ?>">Edit Group</button> 

폼을 모달을 여는

버튼 내 코드입니다 객체 자체는 #edit-template-form이 아닙니다. 따라서 변수를 아래와 같이 사용하기 전에 을 저장하십시오.

+0

'var form = this'를 사용하는 의미론이 더 많습니다. "자아"는 조금 의미가 없습니다. – RobG

관련 문제