2010-12-30 5 views
0

ボタンをクリックすると(最初に)値が「1」をPHPファイルに送信し、クリックされた場合に値「0」を送信すると、jsから値を送信します。 phpファイルに追加します。javascriptの値1と0を切り替える

私はこのようにしていますが、常に0に警告しています。

<body> 
<a href="#" onclick="countMe()">hello</a> 
</body> 
</html> 
<script type="text/javascript"> 
function countMe() 
{ 
var isClicked; 
var x = (isClicked=="0") ? "1" : "0"; 
alert(x); 
} 
</script> 
+2

あなたのコードは決して 'isClicked'を変更しませんが、それが行ったとしてもローカル変数です。それらはあなたの問題です。 – Gabe

+1

rethink ...私はあなたがこれに任意のロジックを参照してくださいか? isCLickedは常に同じ値を持ちます... – Breezer

答えて

8
var isClicked = false; 
function countMe() { 
    isClicked = !isClicked; 
    alert(isClicked ? '1' : '0'); 
} 
+0

偉大な心は似ていると思います! :) –

+0

甘い、それは働いた。どうもありがとう。 – localhost

+0

あなたはコードゴルフなら、これを短縮することができます - 警告((isClicked =!isClicked)? '1': '0')); –

1

あなたはisClickedに何を割り当てていません。試してください:

var isClicked = "0"; 

または有意義な比較を得るための他の割り当て。

+0

isClicked = 0の場合、常に1が表示されます。 – localhost

+1

はい、isClickedの値が何にも割り当てられていないことを説明するデモンストレーションでした。 @ decezeの答えは完了です。その中で、彼はisClicked変数を初期化し、誰かがボタンをクリックするたびにisClickedの値を切り替えます。 – sahhhm

0

は閉鎖して、不要なグローバルフラグを避けてください:

countMe機能は、自身の状態を維持しています。デモンストレーション:

console.log(countMe()); 
console.log(countMe()); 
console.log(countMe()); 
console.log(countMe()); 

出力:付加的な利点として

1 
0 
1 
0 

makeToggler機能が標準溶液で独自(紛らわしい)グローバル変数を必要とするであろうそれぞれが付加的なカウンタを作成するために使用することができ。

関連する問題