Path // www.yourhtmlsource.comReference → <isindex>

<isindex>


The <isindex> element was one of the earliest HTML elements, used to create a simple single-line text input for searching or querying a document. It was a primitive precursor to modern HTML forms, dating back to the very origins of the web.

Clock This page was last updated on 2025-11-17



Deprecation Warning

This element is obsolete and should not be used. The <isindex> element was deprecated in HTML 4.01 and removed from HTML5. It has been obsolete for over two decades and was replaced by the much more capable <form> element.

The <isindex> element was extremely limited—it could only create a single text input and had no way to customize the form submission or input behavior. Modern HTML forms provide complete control over user input and form submission.

Syntax

<isindex prompt="Enter search terms: ">

This was an empty element (no closing tag) that would render a text prompt and input field. When the user entered text and pressed Enter, the browser would submit the query as part of the URL.

Historical Context

The <isindex> element dates back to the very early days of the web (early 1990s), when:

  • HTML was much simpler with very few elements
  • Forms didn't exist yet
  • Server-side scripting was primitive
  • The element was designed for simple searchable indexes

It was quickly superseded by:

  • The <form> element (HTML 2.0, 1995)
  • The <input> element for text fields
  • Ability to create multiple form fields
  • POST method for form submission
  • Better control over form behavior

Modern Alternatives

Use HTML forms for all user input and search functionality:

Old Approach (Obsolete)

<isindex prompt="Search this site: ">

Modern Search Form

<form action="/search" method="get">
  <label for="search">Search this site:</label>
  <input type="search" id="search" name="q" placeholder="Enter search terms">
  <button type="submit">Search</button>
</form>

HTML5 Search Input Type

<form action="/search" method="get" role="search">
  <input type="search" name="q" aria-label="Search"
         placeholder="Search..." required>
  <button type="submit">
    <span>Search</span>
  </button>
</form>

Accessible Search Form

<search>
  <form action="/search" method="get">
    <label for="site-search">Search:</label>
    <input type="search" id="site-search" name="q"
           autocomplete="off">
    <button type="submit">Go</button>
  </form>
</search>

With JavaScript Enhancement

<form action="/search" method="get" id="search-form">
  <input type="search" name="q" id="search-input"
         list="search-suggestions">
  <datalist id="search-suggestions">
    <!-- Populated dynamically -->
  </datalist>
  <button type="submit">Search</button>
</form>

When to Avoid

Always avoid using <isindex>. There is no valid use case for this element:

  • It has been obsolete since the 1990s
  • It provides no control over form behavior
  • It fails HTML5 validation
  • Modern browsers may not support it
  • <form> and <input> are far superior
  • Accessibility features are impossible to add
  • <form> - Modern container for user input
  • <input> - Modern input element with many types
  • <button> - For form submission buttons
  • <select> - For dropdown selections