2011-07-29 7 views
0
ゼロとは異なる量があるとき、私はonbeforeunloadする例外とデータを失うことに対する警告をしよう

:私はこれを試してみましたOnbeforeunload例外

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title></title> 

<script src="http://code.jquery.com/jquery-latest.js"></script> 
</head> 

<body> 
<form> 
<p><input type="text" value="0" maxlength="12" id="qty" class="input-text qty" name="qty2603"></p> 
<p><input type="text" value="0" maxlength="12" id="qty" class="input-text qty" name="qty2613"></p> 
<p><input type="text" value="0" maxlength="12" id="qty" class="input-text qty" name="qty2606"></p> 


<p><a href="http://www.google.com">Google</a></p> 
<p> 
    <input type="submit" name="Submit" value="Envoyer" onclick="prompt = false;" /> 


</p> 
</form> 

<script type="text/javascript"> 
$(window).bind('beforeunload', function(e) { 
    var prompt = true; 
    $('input.qty').each(function(i, input) { 
     if ($(input).val() != '0') { 
      prompt = true; 
     } 
    }); 

    if (prompt) { 
     return e.returnValue = 'Some warning message'; 
    } 
}); 
</script> 

</body> 
</html> 

が、それは同じように動作しませんが、私はしたい...

誰でも助けることができますか?

ありがとうございます。

答えて

0

promptは、です。常に true:デフォルトで、何かがゼロと異なる場合。

代わりに、デフォルトではfalseに設定して、適切なtrueに変更します。

:(
+0

:どのようにそれは動作しませんが、あなたはそれが何をすべきかをしたいですか? – Bizboss

+0

@Bizboss動作しません

var prompt = false; // set to false by default $('input.qty').each(function(i, input) { if ($(input).val() != '0') { prompt = true; } }); if (prompt) { return e.returnValue = 'Some warning message'; } 
pimvdb

+0

あなたの編集では、リンクをクリックするとページを終了できます。ユーザーがページを直接終了できないようにするには、スクリプトに警告メッセージが表示されている必要があります。テキストフィールド...私はそれが今より明確です。 ありがとう:) – Bizboss