ソースを参照

Bug fix: Validate search form for empty strings

Thanks to @astorije for pointing it out at [#pelican](https://botbot.me/freenode/pelican/msg/5577967/)

If user pressed enter in the empty search field it will load the search
page. Tipue will keep scanning indefinitely.

This fix first checks the field for empty strings.
Talha Mansoor 11 年 前
コミット
1cbbded75c
共有1 個のファイルを変更した8 個の追加1 個の削除を含む
  1. 8 1
      templates/base.html

+ 8 - 1
templates/base.html

@@ -54,7 +54,7 @@
                             <li {% if page_name == "categories" %} class="active"{% endif %}><a href="{{ SITEURL }}/categories.html">Categories</a></li>
                             <li {% if page_name == "tags" %} class="active"{% endif %}><a href="{{ SITEURL }}/tags.html">Tags</a></li>
                             <li {% if page_name == "archives" %} class="active"{% endif %}><a href="{{ SITEURL }}/archives.html">Archives</a></li>
-                            <li><form class="navbar-search" action="search.html"> <input type="text" class="search-query" placeholder="Search" name="q" id="tipue_search_input"></form></li>
+                            <li><form class="navbar-search" action="search.html" onsubmit="return validateForm()"> <input type="text" class="search-query" placeholder="Search" name="q" id="tipue_search_input"></form></li>
                         </ul>
                     </div>
                 </div>
@@ -75,6 +75,13 @@
         {% block script %}
         <script src="http://code.jquery.com/jquery.min.js"></script>
         <script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
+        <script>
+            function validateForm()
+            {
+                var query = document.getElementById('tipue_search_input').value;
+                return (query.length > 0);
+            }
+        </script>
         {% endblock script %}
     </body>
 </html>