我有一个基本的问题要问你。我正在创建几个js脚本,如下所示:
<script>
$('#mapveto1').click(function() {
$('#mapveto1').addClass('banned');
$('#map1').text('cobblestone has been banned');
<? $remaining = $remaining -1; ?>
$('#banstatus').html('<span class="glyphicon glyphicon-repeat glyphicon-repeat-animate"></span> Maps are being banned <? echo $remaining; ?>');
});
</script>
在每个脚本中,元素的id都在被更改。如您所见,其中有一些PHP变量。
问题是,这些php行总是被执行,即使我没有通过单击元素来运行这个脚本。 如何制作仅在js脚本执行时才会执行的php脚本?
答案 0 :(得分:-1)
更新:下面的示例以示例方式传递变量的方式,但是在使用这种方式将其传递给Javascript之前,最后要了解$remaining
变量输出。
使用existing third-party libraries for that请求执行任务的另一种方法是建议POST&amp;获取数据。
如果你需要将PHP变量传递给JavaScript全局变量,你可以这样做
var js_variable = <?php echo $php_variable; ?>;//copy from php to js
然后在点击事件中使用js_variable++
或js_variable--
,或在任何地方使用js_variable
。
所以你的例子将是
<script>
var remaining = <? echo $remaining; ?>
$('#mapveto1').click(function() {
$('#mapveto1').addClass('banned');
$('#map1').text('cobblestone has been banned');
remaining--;
//or remaining -= 1;
//or remaining = remaining -1;
$('#banstatus').html('<span class="glyphicon glyphicon-repeat glyphicon-repeat-animate"></span> Maps are being banned '+ remaining);
});
</script>