Advertisement
Guest User

Untitled

a guest
Aug 27th, 2014
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.41 KB | None | 0 0
  1. <div class="panel panel-default">
  2. <div class="panel-body parent-additional-fields">
  3.  
  4. <div class="row p-10">
  5. <div class="col-lg-10">
  6. <label>Additional Fields</label>
  7. </div>
  8. <div class="col-lg-2">
  9. <a href="#" id="add-additional-fields">
  10. <i class="fa fa-plus"></i>
  11. </a>&nbsp;&nbsp;&nbsp;
  12. <a href="#" id="remove-additional-fields">
  13. <i class="fa fa-times"></i>
  14. </a>
  15. </div>
  16. </div>
  17.  
  18. <div class="panel panel-default panel-grey additional-fields-group">
  19. <div class="panel-body">
  20. <div class="row p-10">
  21. <div class="col-lg-4">
  22. <label>Field Name</label>
  23. </div>
  24. <div class="col-lg-8">
  25. <input type="text" name="multiple[0][field_name]" class="form-control">
  26. </div>
  27. </div>
  28. <div class="row p-10">
  29. <div class="col-lg-4">
  30. <label>Field Type</label>
  31. </div>
  32. <div class="col-lg-8">
  33. <input type="text" name="multiple[0][field_type]" class="form-control">
  34. </div>
  35. </div>
  36. <div class="row p-10">
  37. <div class="col-lg-12">
  38. <ul class="nav nav-tabs" role="tablist">
  39. <li class="active"><a href="#additional_field_opt_1[0]" class="option1" role="tab" data-toggle="tab">Option 1</a></li>
  40. <li><a href="#additional_field_opt_2[0]" class="option2" role="tab" data-toggle="tab">Option 2</a></li>
  41. </ul>
  42.  
  43. <!-- Tab panes -->
  44. <div class="tab-content">
  45. <div class="tab-pane fade in active tab_option1" id="additional_field_opt_1[0]">
  46. <div class="well well-no-margin-bot well-white">
  47. <div class="row p-10">
  48. <div class="col-lg-4">
  49. <label for="multiple[0][option_1][tag_name]">Tag Name</label>
  50. </div>
  51. <div class="col-lg-8">
  52. <input name="multiple[0][option_1][tag_name]" type="text" class="form-control">
  53. </div>
  54. </div>
  55. <div class="row p-10">
  56. <div class="col-lg-4">
  57. <label for="multiple[0][option_1][attribute]">Attribute</label>
  58. </div>
  59. <div class="col-lg-8">
  60. <input name="multiple[0][option_1][attribute]" type="text" class="form-control">
  61. </div>
  62. </div>
  63. <div class="row p-10">
  64. <div class="col-lg-4">
  65. <label for="multiple[0][option_1][value]">Value</label>
  66. </div>
  67. <div class="col-lg-8">
  68. <input name="multiple[0][option_1][value]" type="text" class="form-control">
  69. </div>
  70. </div>
  71. <div class="row p-10">
  72. <div class="col-lg-4">
  73. <label for="multiple[0][option_1][index]">Index</label>
  74. </div>
  75. <div class="col-lg-8">
  76. <input name="multiple[0][option_1][index]" type="text" class="form-control">
  77. </div>
  78. </div>
  79. </div>
  80. </div>
  81. <div class="tab-pane fade tab_option2" id="additional_field_opt_2[0]">
  82. <div class="well">
  83. <div class="row p-10">
  84. <div class="col-lg-4">
  85. <label for="multiple[0][option_2][tag_name]">Tag Name</label>
  86. </div>
  87. <div class="col-lg-8">
  88. <input name="multiple[0][option_2][tag_name]" type="text" class="form-control">
  89. </div>
  90. </div>
  91. <div class="row p-10">
  92. <div class="col-lg-4">
  93. <label for="multiple[0][option_2][index]">Index</label>
  94. </div>
  95. <div class="col-lg-8">
  96. <input name="multiple[0][option_2][index]" type="text" class="form-control">
  97. </div>
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. </div>
  103. </div>
  104. </div>
  105. </div>
  106.  
  107. </div>
  108. </div>
  109.  
  110. $(document).on('click', '#add-additional-fields', function()
  111. {
  112. var id = parseInt($(this).closest('.parent-additional-fields').find('.additional-fields-group').length + 1);
  113. var index = parseInt(id - 1);
  114. var parent_row = $(this).closest('.parent-additional-fields');
  115. var new_field = $('.additional-fields-group').last().clone();
  116.  
  117. var field_name = 'multiple['+ index + '][field_name]';
  118. var field_type = 'multiple['+ index + '][field_type]';
  119. var option_1_anchor = 'additional_field_opt_1['+ index +']';
  120. var option_2_anchor = 'additional_field_opt_2['+ index +']';
  121. var option_1_id = 'additional_field_opt_1['+ index +']';
  122. var option_2_id = 'additional_field_opt_2['+ index +']';
  123. var option_1_tagname = 'multiple['+ index +'][option_1][tag_name]';
  124. var option_1_attribute = 'multiple['+ index +'][option_1][attribute]';
  125. var option_1_value = 'multiple['+ index +'][option_1][value]';
  126. var option_1_index = 'multiple['+ index +'][option_1][index]';
  127. var option_2_tagname = 'multiple['+ index +'][option_2][attribute]';
  128. var option_2_index = 'multiple['+ index +'][option_2][index]';
  129.  
  130. new_field.find('.option1').each(function(){
  131. var name = $(this);
  132. name.attr('href', '#'+option_1_anchor);
  133. });
  134.  
  135. new_field.find('.option2').each(function(){
  136. var name = $(this);
  137. name.attr('href', '#'+option_2_anchor);
  138. });
  139.  
  140. new_field.find('.tab_option1').each(function(){
  141. var name = $(this);
  142. name.attr('id', option_1_id);
  143. });
  144.  
  145. new_field.find('.tab_option2').each(function(){
  146. var name = $(this);
  147. name.attr('id', option_2_id);
  148. });
  149.  
  150. // new_field.find()
  151.  
  152. $('.parent-additional-fields').append(new_field);
  153. });
  154.  
  155. //remove additional fields
  156. $(document).on('click', '#remove-additional-fields', function()
  157. {
  158. if($(this).closest('.parent-additional-fields').find('.additional-fields-group').length == 1)
  159. {
  160. alert("You cannot remove the last form!");
  161. return false;
  162. }
  163. $(this).closest('.parent-additional-fields').find('.additional-fields-group').last().remove();
  164. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement