我想从js发送一个值,如果点击一个按钮(第一次)发送一个值“1”到php文件,如果点击它再次发送一个值“0”到php文件。
我正在尝试这样做,但它总是提醒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>
答案 0 :(得分:8)
var isClicked = false;
function countMe() {
isClicked = !isClicked;
alert(isClicked ? '1' : '0');
}
答案 1 :(得分:1)
您没有为isClicked分配任何内容。尝试:
var isClicked = "0";
或任何其他任务以获得有意义的比较。
答案 2 :(得分:0)
使用闭包避免不必要的全局标志:
function makeToggler() {
var isClicked = false;
return function() {
isClicked = !isClicked;
return isClicked ? "1" : "0";
}
}
var countMe = makeToggler();
countMe
函数保持自己的状态。示范:
console.log(countMe());
console.log(countMe());
console.log(countMe());
console.log(countMe());
输出:
1
0
1
0
作为一个额外的好处,makeToggler
函数可用于创建其他计数器,每个计数器在标准解决方案中都需要自己的(令人困惑的)全局变量。