简体   繁体   中英

Add text box on click on Add Button

I am working on laravel framework here i need when user click on Add more button the textbox add above on button. I need 18 textbox when user reached to 18th Textbox it will give alert.I don't know how to add. I am new in jquery and javascript. Can anyone help me

Here is the screenshot:- 在此处输入图片说明

Here is my Html Code:-

<div>
    <input type="text" name="name" class="form-control">
        <div class="sign-btn signup-page">
        <button class="btn btn-info sign-bttn">Add More</button>
        </div>
</div>

Make array of name to get values of each name and the code looks like,

 $(function() { var len = 4; // for testing purpose I am using 4 you can change it to 18 $('.sign-bttn').on('click', function() { if($('#name-container-list .name-list').length==len){ alert("You can't add more"); return false; } $clone = $('#name-container-list .name-list:first').clone(); $clone.find('input').val(''); // empty the new clone field $(this).parent('div').before($clone); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div id="name-container-list"> <div class="name-list"> <input type="text" name="name[]" class="form-control" /> </div> <div class="sign-btn signup-page"> <button class="btn btn-info sign-bttn">Add More</button> </div> </div> 

This might help,

 $('.sign-bttn').click(function(e) { $('.text-boxes').prepend('<input type="text" name="name" class="form-control">'); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="text-boxes"> <input type="text" name="name" class="form-control"> <div class="sign-btn signup-page"> <button class="btn btn-info sign-bttn">Add More</button> </div> </div> 

Your Html:

<div id="divContain">
  <div id='divText'>
    <input type="text" name="name" class="form-control">
  </div>

  <div class="sign-btn signup-page">
    <button class="btn btn-info sign-bttn">Add More</button>
  </div>
</div>

Your JQuery:

 var maxField = 18;
 var fieldHTML = ' <input type="text" name="name" class="form-control">'; //New input field html 
 var x = 1; //Initial field counter is 1
 $('.btn-info').click(function() { //Once add button is clicked
   if (x < maxField) { //Check maximum number of input fields
     x++; //Increment field counter
     $('#divText').append(fieldHTML); // Add field html
   }
   else
   {

   alert('No more text box :)');
   }
 });

Working Fiddle

    <!DOCTYPE html>
    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
    $(document).ready(function(){


$('.sign-bttn').click(function(e) {

if($('input[name="name"]').length < 18)
{
$('.text-boxes').prepend('<input type="text" name="name" class="form-control" value='+ ($('input[name="name"]').length + 1) +'>');
}
else
{
alert("reached 18 TextBoxes.............")
}
});


    });
    </script>
    </head>
    <body>
    <div class="text-boxes">
    <input type="text" name="name" class="form-control">
        <div class="sign-btn signup-page">
        <button class="btn btn-info sign-bttn">Add More</button>
        </div>
</div>


        </body>


    </body>
    </html>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM