Alexandru
Alexandru

Reputation: 83

Search Form Error sends to ?q=

I'm using Bootstrap theme and my form is this:

<form class="navbar-form" role="search" method="get" action="<?=$domain?>search" onsubmit="DoSubmit();">
    <div class="input-group">
        <input type="text" class="form-control input" placeholder="Search" name="q">
        <div class="input-group-btn">
            <button  type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-search"></i></button>
        </div>
    </div>
</form>

The original page where is placed is

http://www.domain.com/toys/search/Electronics for Kids/

when i search into form "test" and press enter, it sends me to

http://www.domain.com/toys/search/?q=test

With what should i replace the code to send me to:

http://www.domain.com/toys/search/test

Thanks in advance!

Upvotes: 3

Views: 62

Answers (1)

Thomas Schober
Thomas Schober

Reputation: 145

I assume you use JQuery if you use bootstrap.

So do following:

HTML:

<form class="navbar-form" role="search" method="get" action="<?=$domain?>search" id="searchFrom">
    <div class="input-group">
        <input type="text" id="searchField" class="form-control input" placeholder="Search" name="q">
        <div class="input-group-btn">
            <button  type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-search"></i></button>
        </div>
    </div>
</form>

JS:

$('body').on('submit','#searchFrom', function(e) {
    e.preventDefault();
    location.href = $(this).attr('action')+'/'+encodeURIComponent($('#searchField').val());
});

Upvotes: 3

Related Questions