检查值是否为空javascript

时间:2015-05-15 16:01:26

标签: javascript php html forms

提交后,我希望将用户重定向到另一个页面,其中包含url中输入的值。现在,当没有价值时,我希望它什么都不做(返回false)。我怎么能这样做?

我目前的代码:

<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>

4 个答案:

答案 0 :(得分:3)

你有两种方法可以做到这一点。 使用JavaScript:

&#13;
&#13;
function validateForm() {
    var x = document.forms["myForm"]["nameField"].value;
    if (x == null || x == "") {
        alert("Name must be filled out");
        return false;
    }
}
&#13;
<form name="myForm" action="demo_form.asp" onsubmit="return validateForm()" method="post">
Name: <input type="text" name="nameField">
<input type="submit" value="Submit">
</form>
&#13;
&#13;
&#13;

或者您可以使用HTML5必需属性:

&#13;
&#13;
<!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>
&#13;
&#13;
&#13;

现在由你决定! :d

答案 1 :(得分:1)

您可以使用HTML 必需的属性来执行此操作。看起来好像用javascript来处理它。就像这样:

http://jsbin.com/xumaxilowo/1/edit?html,css,output

<form action="">
  Username: <input type="text" name="usrname" required>
  <input type="submit">
</form>

答案 2 :(得分:1)

这是JS解决方案,服务器上不会发布任何帖子。 (但此代码需要在php文件中)

<form action="" method="post" class="searchInput">
  <input type="text" placeholder="Search anything you want..." name="search" id="search" />

  <button name="btnsearch"
          id="btnsearch" 
          type="button"
          onclick="redirect();"
  >Search</button>
</form>

这里是js

function redirect() {
  var value = document.getElementById('search').value;
  if (value !== '') {
    window.location = '<?php echo base_url("index.php/search/index")?>/' +
                      document.getElementById('search').value;
  }
}

答案 3 :(得分:0)

如果您今年在寻找答案,可以使用 注意:如果数组为空,它将返回true,对于这种特殊的边缘情况,您可以随时检查array.length;

return new Boolean(array) && array.length > 0;

有关更多信息,请检查https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean