Forms
Default Inputs
image

<div class="grid grid-cols-12 gap-4">
  <div class="col-span-12">
    <label class="form-label">Basic Input</label>
    <input type="text" name="#0" class="form-control">
  </div>
  <div class="col-span-12">
    <label class="form-label">Input with Placeholder</label>
    <input type="text" name="#0" class="form-control" placeholder="info@gmail.com">
  </div>
  <div class="col-span-12">
    <label class="form-label">Input with Phone </label>
    <input type="text" class="form-control grow" placeholder="+1 (555) 253-08515">
  </div>
  <div class="col-span-12">
    <label class="form-label">Input Date</label>
    <input type="date" name="#0" class="form-control">
  </div>
  <div class="col-span-12">
    <label class="form-label">Input with Payment</label>
    <div class="flex">
      <span class="inline-flex items-center px-3 border rounded-e-0 border-e-0 rounded-s-md border-neutral-200 dark:border-neutral-600">
        <img src="assets/images/card/payment-icon.png" alt="image">
      </span>
      <input type="text" class="form-control grow rounded-ss-none rounded-es-none" placeholder="Card Number">
    </div>
  </div>
</div>
            
http://

This is a hint text to help user.


<div class="grid grid-cols-12 gap-4">
  <div class="col-span-12">
    <label class="form-label">Input</label>
    <div class="flex">
      <span class="inline-flex items-center px-3 border rounded-e-0 border-e-0 rounded-s-md border-neutral-200 dark:border-neutral-600">
        <iconify-icon icon="mynaui:envelope"></iconify-icon>
      </span>
      <input type="text" class="form-control grow rounded-ss-none rounded-es-none" placeholder="info@gmail.com">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Input</label>
    <div class="flex">
      <select class="form-select flex-grow-0 rounded-se-none rounded-ee-none border-e-0 w-auto">
        <option>US</option>
        <option>US</option>
        <option>US</option>
        <option>US</option>
        <option>US</option>
      </select>
      <input type="text" class="form-control grow rounded-ss-none rounded-es-none" placeholder="info@gmail.com">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Input</label>
    <div class="flex">
      <input type="text" class="form-control grow rounded-se-none rounded-ee-none" placeholder="info@gmail.com">
      <select class="form-select flex-grow-0 rounded-ss-none rounded-es-none border-s-0 w-auto">
        <option>US</option>
        <option>US</option>
        <option>US</option>
        <option>US</option>
        <option>US</option>
      </select>
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Input</label>
    <div class="flex">
      <span class="inline-flex items-center px-3 border rounded-e-0 border-e-0 rounded-s-md border-neutral-200 dark:border-neutral-600">
        http:// 
      </span>
      <input type="text" class="form-control grow rounded-ss-none rounded-es-none" placeholder="www.random.com">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Input</label>
    <div class="flex">
      <input type="text" class="form-control grow rounded-se-none rounded-ee-none" placeholder="www.random.com">
      <button type="button" class="inline-flex items-center px-3 border rounded-s-0 border-s-0 rounded-e-md border-neutral-200 dark:border-neutral-600"><iconify-icon icon="lucide:copy"></iconify-icon>Copy</button>
    </div>
    <p class="text-sm mt-2 mb-0">This is a hint text to help user.</p>
  </div>
</div>
            

  <div class="grid grid-cols-12 gap-4">
    <div class="col-span-12">
      <label class="form-label">Input Large</label>
      <input type="text" name="#0" class="form-control py-4" placeholder="info@gmail.com">
    </div>
    <div class="col-span-12">
      <label class="form-label">Input Medium</label>
      <input type="text" name="#0" class="form-control" placeholder="info@gmail.com">
    </div>
    <div class="col-span-12">
      <label class="form-label">Input Small</label>
      <input type="text" name="#0" class="form-control py-2 text-sm" placeholder="info@gmail.com">
    </div>
  </div>
            

<div class="grid grid-cols-12 gap-4">
  <div class="col-span-12">
    <label class="form-label">First Name</label>
    <div class="icon-field">
      <span class="icon">
        <iconify-icon icon="f7:person"></iconify-icon>
      </span>
      <input type="text" name="#0" class="form-control" placeholder="Enter First Name">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Last Name</label>
    <div class="icon-field">
      <span class="icon">
        <iconify-icon icon="f7:person"></iconify-icon>
      </span>
      <input type="text" name="#0" class="form-control" placeholder="Enter Last Name">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Email</label>
    <div class="icon-field">
      <span class="icon">
        <iconify-icon icon="mage:email"></iconify-icon>
      </span>
      <input type="email" name="#0" class="form-control" placeholder="Enter Email">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Phone</label>
    <div class="icon-field">
      <span class="icon">
        <iconify-icon icon="solar:phone-calling-linear"></iconify-icon>
      </span>
      <input type="text" name="#0" class="form-control" placeholder="+1 (555) 000-0000">
    </div>
  </div>
  <div class="col-span-12">
    <label class="form-label">Password</label>
    <div class="icon-field">
      <span class="icon">
        <iconify-icon icon="solar:lock-password-outline"></iconify-icon>
      </span>
      <input type="password" name="#0" class="form-control" placeholder="*******">
    </div>
  </div>
  <div class="col-span-12">
    <button type="submit" class="btn btn-primary-600">Submit</button>
  </div>
</div>
            

<div class="card-body">
  <div class="grid grid-cols-12 gap-y-4 items-center mb-6">
    <label class="form-label mb-0 sm:col-span-2 col-span-12">First Name</label>
    <div class="sm:col-span-10 col-span-12">
      <input type="text" name="#0" class="form-control" placeholder="Enter First Name">
    </div>
  </div>
  <div class="grid grid-cols-12 gap-y-4 items-center mb-6">
    <label class="form-label mb-0 sm:col-span-2 col-span-12">Last Name</label>
    <div class="sm:col-span-10 col-span-12">
      <input type="text" name="#0" class="form-control" placeholder="Enter Last Name">
    </div>
  </div>
  <div class="grid grid-cols-12 gap-y-4 items-center mb-6">
    <label class="form-label mb-0 sm:col-span-2 col-span-12">Email</label>
    <div class="sm:col-span-10 col-span-12">
      <input type="email" name="#0" class="form-control" placeholder="Enter Email">
    </div>
  </div>
  <div class="grid grid-cols-12 gap-y-4 items-center mb-6">
    <label class="form-label mb-0 sm:col-span-2 col-span-12">Phone</label>
    <div class="sm:col-span-10 col-span-12">
      <div class="flex">
        <select class="form-select flex-grow-0 rounded-se-none rounded-ee-none border-e-0 w-auto">
          <option>US</option>
          <option>US</option>
          <option>US</option>
          <option>US</option>
        </select>
        <input type="text" name="#0" class="form-control grow rounded-ss-none rounded-es-none" placeholder="+1 (555) 000-0000">
      </div>
    </div>
  </div>
  <div class="grid grid-cols-12 gap-y-4 items-center mb-6">
    <label class="form-label mb-0 sm:col-span-2 col-span-12">Password</label>
    <div class="sm:col-span-10 col-span-12">
      <input type="password" name="#0" class="form-control" placeholder="*******">
    </div>
  </div>
  <button type="submit" class="btn btn-primary-600">Submit</button>
</div>
            
Please provide first name
Please provide last name
Please provide email address
Please provide phone number
Please provide password
Please confirm password

<form class="grid grid-cols-12 gap-4">
  <div class="md:col-span-6 col-span-12">
    <label class="form-label">First Name</label>
    <div class="icon-field has-validation">
      <span class="icon">
        <iconify-icon icon="f7:person"></iconify-icon>
      </span>
      <input type="text" name="#0" class="form-control" placeholder="Enter First Name" required>
    </div>
  </div>
  <div class="md:col-span-6 col-span-12">
    <label class="form-label">Last Name</label>
    <div class="icon-field has-validation">
      <span class="icon">
        <iconify-icon icon="f7:person"></iconify-icon>
      </span>
      <input type="text" name="#0" class="form-control" placeholder="Enter Last Name" required>
    </div>
  </div>
  <div class="md:col-span-6 col-span-12">
    <label class="form-label">Email</label>
    <div class="icon-field has-validation">
      <span class="icon">
        <iconify-icon icon="mage:email"></iconify-icon>
      </span>
      <input type="email" name="#0" class="form-control" placeholder="Enter Email" required>
    </div>
  </div>
  <div class="md:col-span-6 col-span-12">
    <label class="form-label">Phone</label>
    <div class="icon-field has-validation">
      <span class="icon">
        <iconify-icon icon="solar:phone-calling-linear"></iconify-icon>
      </span>
      <input type="text" name="#0" class="form-control" placeholder="+1 (555) 000-0000" required>
    </div>
  </div>
  <div class="md:col-span-6 col-span-12">
    <label class="form-label">Password</label>
    <div class="icon-field has-validation">
      <span class="icon">
        <iconify-icon icon="solar:lock-password-outline"></iconify-icon>
      </span>
      <input type="password" name="#0" class="form-control" placeholder="*******" required>
    </div>
  </div>
  <div class="md:col-span-6 col-span-12">
    <label class="form-label">Confirm Password</label>
    <div class="icon-field has-validation">
      <span class="icon">
        <iconify-icon icon="solar:lock-password-outline"></iconify-icon>
      </span>
      <input type="password" name="#0" class="form-control" placeholder="*******" required>
    </div>
  </div>
  <div class="col-span-12">
    <button class="btn btn-primary-600" type="submit">Submit form</button>
  </div>
</form>
            

JavaScript


  // Fetch all the forms we want to apply custom Bootstrap validation styles to
  const forms = document.querySelectorAll('.needs-validation')

  // Loop over them and prevent submission
  Array.from(forms).forEach(form => {
    form.addEventListener('submit', event => {
      if (!form.checkValidity()) {
        event.preventDefault()
        event.stopPropagation()
      }

      form.classList.add('was-validated')
    }, false)
  })