我有一个内置JavaScript函数和变量的HTML脚本。我想将此函数传递给.php脚本,然后在.php脚本中调用该函数。我已经有一个HTML form
,它将一些其他值传递给.php脚本,因此它可能是传递它的最简单方法我只是不知道如何。
该函数将1添加到HTML页面上显示的变量,唯一的问题是,当我调用.php脚本时,它会加载一个新页面,当我返回带有变量的页面时,什么也没发生,我我不确定,但我相信这是因为变量没有保存?
HTML:
<div class="curVariable">
Nubmer is: $<span id="curVariable"></span>
</div>
<script type="text/javascript">
//var curVariable= document.getElementById('curVariable').value;
var curVariable= 1;
document.getElementById("curVariable").innerHTML = curVariable;
document.getElementByID("curVariable").value = curVariable;
function addOne() {
curVariable= curVariable+ 1 ;
document.getElementById("curVariable").innerHTML = curVariable;
}
</script>
<form id="payment-form" action="chargeCard.php" method="POST" name="payment-form">
<input onkeypress="return isNumberKey(event)" type="text" name="amount" id="amount" />
<input type="image" src="CusButton1.png" id="customButton" value="pay" alt="button"/>
</form>
<script type="text/javascript">
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
</script>
PHP:
<?php
echo '<script type="text/javascript"> addOne(); </script>';
?>
答案 0 :(得分:0)
如果要提交号码,可以在表单字段中执行此操作,然后重新构建页面。 HTML的本质是无状态的,因此除了表单中的数据之外不会保存任何内容。
我认为您可能想要做的是使用AJAX与PHP脚本交互而无需提交页面。我没有测试过代码,但有些类似的东西;
$(function(){
$('#customButton').click(function(e){
$.get('chargeCard.php','currAmt=' + $('#amount').val,processChange);
e.preventDefault(); //stop form from being submitted
}); //end click
}); //end ready
function processChange(result) {
//process the data returned from the call
}
在chargeCard.php脚本中,您可以操作已提交的currAmt查询字符串值,然后返回新的代码,值或其他内容,并在JavaScript processChange函数中处理它。 (result)参数包含您返回的内容。