0

検索フィールドが空白のままの場合は何もせず、何かが入力された場合は別のページをロードしようとしています。では、入力テキストボックスの値が空白のときに同じphpページをロードし、入力テキストの値が空白でないときに別のphpページをロードするにはどうすればよいですか?

例えば

<input id="srch" type="text" name="query" >

このテキストボックスの値が "" の場合、同じ php ページがロードされる必要があります。それ以外の場合は、他のページ....

phpまたはjavascriptに方法はありますか..?

4

4 に答える 4

0

PHPでは、クエリの内容をチェックするスクリプトで、次のことを実行できます。

if( isset($_GET['query']) && $_GET['query'] != '' ) {
    header('Location: someotherpage.php?query=' . urlencode($_GET['query']));
    exit();
}

このqillは、ブラウザにsomeotherpage.phpに移動するように指示します

于 2013-03-16T18:53:31.037 に答える
0

フォームに簡単なonsubmit関数を使用できます。

<form method="post" action="<?php $_SERVER['PHP_SELF']?>" onSubmit="return validate()" id="searchForm">
    <input id="srch" type="text" name="query" >
    <input type="submit" value="Submit">
</form>

<script type="text/javascript">
function validate(){
    if(document.getElementById('srch').value != ''){
        document.getElementById('searchForm').action = 'YOUR_OTHER_PAGE';
    }
}
</script>

上記の例では、フォームが送信され、validate()javascriptの関数に送られます。#srchこの関数は、が空かどうかをすばやく確認します。そうでない場合actionは、フォームのを指定したページに変更します。その値をに設定したYOUR_OTHER_PAGEので、適切なページに変更する必要があります。の値#srchが空の場合、設定したアクションが保持されPHP_SELFます。

于 2013-03-16T18:53:53.937 に答える
0

PHPの場合-フォームを送信した後-と呼ばれるスクリプトにしましょうdecide.php

それは内容です:

if (!isset($_GET['query']) || $_GET['query']=='' )
    include "emptysearchlanding.php";
else
    include "somethingelse.php";
于 2013-03-16T18:54:17.213 に答える
-1

inputString.length == 0これが私が使用するコードです。空白の入力に使用して何をすべきかを決定し、 if ステートメントを実行して 2 番目の関数を実行できます。回答に含めたコードは、入力を自動的に php ファイルに投稿するために使用されます。

JavaScript :

<script type="text/javascript">
function lookup(inputString) {
if(inputString.length == 0) 
{
$('#suggestions').hide();
}
else
{
$.post("http://www.example.com/suggest.php", {queryString: ""+inputString+""}, function(data){
if(data.length > 0) {
$('#suggestions').show();
$('#autoSuggestionsList').html(data);
}
});
}
} 
function fill(thisValue) {
$('#inputString').val(thisValue);
setTimeout("$('#suggestions').hide();", 200);
}
function outoffocus() {
setTimeout("$('#suggestions').hide();", 200);
}
</script>

HTML :

<form id="search" action="/search.php" method="get"> 
<input type="text" name="search" id="inputString" onkeyup="lookup(this.value);" onblur="outoffocus()" onfocus="lookup(this.value);"/>
<input type="submit" value="&nbsp;" />
<div class="suggestionsBox" id="suggestions" >
 <div class="suggestionList" id="autoSuggestionsList">
&nbsp;
</div>
</div>
</form>
于 2013-03-16T18:55:31.940 に答える