After submitting I want the redirect the users to a different page with the value of the input in the url. Now, when there is no value I want that it does nothing (return false). How can I do this?
My current code:
JavaScript
x
<form action="" method="post" class="searchInput">
<input type="text" placeholder="Search anything you want..." name="search" id="search" />
<button name="btnsearch" id="btnsearch" onclick=" window.location = '<?php echo base_url("index.php/search/index")?>/'+document.getElementById('search').value; return false;">
Search</button>
</form>
Advertisement
Answer
You have two ways to do that. With JavaScript:
JavaScript
function validateForm() {
var x = document.forms["myForm"]["nameField"].value;
if (x == null || x == "") {
alert("Name must be filled out");
return false;
}
}
JavaScript
<form name="myForm" action="demo_form.asp" onsubmit="return validateForm()" method="post">
Name: <input type="text" name="nameField">
<input type="submit" value="Submit">
</form>
Or you can use the HTML5 required attribute:
JavaScript
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>HTML 5 Form Validation</title>
</head>
<body>
<form action="">
Username: <input type="text" name="username" required>
<input type="submit">
</form>
</body>
</html>
Now its up to you! 😀