2016-10-17 4 views
1

JavaScript機能を作成すると、ユーザーがTextBoxでの入力を開始したときにアラートがポップアップされ、サーバーが結果が含まれていても3秒です。指定された時刻にサーバーから結果を取得できない場合のポップアップアラートメッセージ

私の現在のコード:

function keyup(e) { 
    if(timeout != null) { 
     clearTimeout(timeout); 
     timeout = null; 
    } 

    if(jq('.ui-menu-item').is(":visible")) { 
     time = performaceTiming.responseStart; 
     timeout = setTimeout(bluff, 3000); 
    } 
    else { 
     timeout = setTimeout(popup, 2000); 
    } 
} 

function bluff() { 
    alert('alert box inside bluff'); 
} 

function popup() { 
    alert('the requested name could not be found, please search for other name'); 
} 
+0

を追加する必要があり、はったりまたはポップアップが、未定義の変数という名前の関数を呼び出すことはありませんスクリプトがどのように動作するのか混乱します。あなたのコードは、メニュー項目が表示されていない場合は最後に入力した2秒後に 'popup'関数を呼び出し、メニュー項目が表示されている場合は3秒後に' bluff'関数を呼び出します。表示されたコードには、結果やサーバーコールに関する情報は何もありません。 [mcve]を含めてください。 –

+0

ええ、私はそれを知っていました。それを含める方法はありません。それを見つける方法を探しています...時間が経過しても目に見える結果を取得できない場合、ポップアップする方法は?あなたはどのように知っていた? – Maneesh

答えて

0

あなたはそれだ呼び出すために()関数

if(jq('.ui-menu-item').is(":visible")){ 
    time=performaceTiming.responseStart; 

     timeout=setTimeout(bluff(),3000);} 
else{ 
    timeout=setTimeout(popup(),2000); 
} 
+0

返信いただきありがとうございます。私もそれを追加しました.3秒で結果を取得できなかった場合、警告ポップアップを表示したいのですが...達成するための方法はありません。 – Maneesh

+0

これは実際には悪いアドバイスです。このようにすると、あなたが定義したタイムアウトではなく、即座に 'bluff'や' popup'が呼び出されます。あなたはそれを元の状態で正しく持っています。 –

関連する問題