我有这个问题。我改为JavaScriptphp变量,但我必须转到的变量在循环中,当然,它总是传递最后一个值!我怎样才能使它超过当时变量的值?这就是密码!
for ($ a = 0 ; $ a < 2 ; $ a = $ a + 1 ) {
? >
< TD >
< Script >
var step = " name < ? php echo $ rigauno- ? > ; ? > " ;
< / Script >
< Button type = "button " onclick = " funzionepassaggio (step ) " class = " btn btn btn -info - lg " data- Toggle = " modal " data- target = " # ModalSubmit " > < ? Php echo " empty " ? ; ? > < / Button >
< / TD >
< ? Php } ? >
对变量使用不同的名称或使用数组。
PHP将在任何javascript运行之前完全执行,因此,由于"step"在同一范围内被重复声明,您将多次覆盖变量"step"的值。
加载页面时,此变量将始终保持上次写入的值。
我想你有一个页面,每个步骤都有一个不同的按钮。
使用不同的变量名
var step<?php echo $a; ?> = //yourvalue
<Button type="button" onclick="funzionepassaggio(step<?php echo $a; ?>)" />
使用阵列
在php循环之外声明数组
var steps = new Array();
然后在环路内,将元件推入阵列
steps.push(<?php echo $a; ?>);
或
steps[<?php echo $a; ?>] = <?php echo $a; ?>;
然后检索值
<Button type="button" onclick="funzionepassaggio(step[<?php echo $a; ?>])" />