2011-07-06 4 views
2

동적 양식을 만들어야합니다. 구조는 다음과 같습니다. 각 모자. 많은 단락을 가질 수 있으며, 양식은 많은 모자를 가질 수 있습니다.동적 jQuery 양식에 요소 추가

는 여기에 예제가있다 : http://jsfiddle.net/michelejs/UX5bz/

나는 내가 단락을 추가 할 경우 올바른 필드 셋에 추가 될 것입니다. 어떻게해야합니까?

+0

올바른 필드 집합은 무엇입니까? 코드를 기반으로 단락을 추가 할 때마다 fieldset 요소를 추가하고 있습니다 ... – Fosco

+0

각 마디와 그의 단락에 대해 필드 세트를 생성합니다. 필드 집합 뚜껑에 단락이 추가됩니다. – michele

답변

2

는이 같은 것을 사용할 수 있습니다 추가 할 위치를 찾을 수 .parent()을 사용 http://jsfiddle.net/UX5bz/7/

: 여기

$(elem).parent().append(htmlcode); 
+0

고마워요 !!! – michele

0

는 코드의 작업 버전입니다.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> 
<script> 
    $(document).ready(function() { 
     var capitoli = 1; 

     $('#addCap').live("click", function() { 
      capitoli = capitoli + 1; 
      var htmlcode = '<fieldset id="capitolo1">' + '<legend>Cap' + capitoli + '</legend>' + '<input type="text" value=""/>' + '<input type="button" class="addParag" value="Add Paragraph"></fieldset>'; 

      $("#frm").append(htmlcode); 

     }); 

     $('.addParag').live("click", function() { 
      var htmlcode = '<fieldset id="parag">' + '<legend>Paragraph</legend>' + '<input type="text" value="name paragraph"/>' + '<input type="button" id="removeParagrafo" value="Remove Paragraph"></fieldset>'; 
      $(this).parents("fieldset").append(htmlcode); 

     }); 
    }); 
</script> 
</head> 
<body> 

<form id="frm"> 
    <div> 
     <input type="submit" name="g" value="Submit" id="g" /> 
     <input type="button" id="addCap" value="Add a Cap"> 
    </div> 
    <fieldset id="cap1"> 
     <legend>Cap1</legend> 
     <input type="text" value="name cap1"/> 
     <input type="button" class="addParag" value="Add a Paragraph"> 
    </fieldset> 

</form> 
</body> 
</html>