Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将javascript函数传递给.php脚本_Javascript_Php_Html_Function_Send - Fatal编程技术网

将javascript函数传递给.php脚本

将javascript函数传递给.php脚本,javascript,php,html,function,send,Javascript,Php,Html,Function,Send,我有一个HTML脚本,里面有JavaScript函数和变量。我想把这个函数传递给一个.php脚本,然后在.php脚本中调用这个函数。我已经有了一个HTML表单,它将其他一些值传递给.php脚本,因此这可能是传递它的最简单方法,我只是不知道如何传递 该函数向HTML页面上显示的变量添加1,唯一的问题是,当我调用.php脚本时,它会加载一个新页面,当我返回带有该变量的页面时,什么都没有发生,我不确定,但我相信这是因为变量没有保存 HTML: <div class="curVariable"&g

我有一个HTML脚本,里面有JavaScript函数和变量。我想把这个函数传递给一个.php脚本,然后在.php脚本中调用这个函数。我已经有了一个HTML
表单
,它将其他一些值传递给.php脚本,因此这可能是传递它的最简单方法,我只是不知道如何传递

该函数向HTML页面上显示的变量添加1,唯一的问题是,当我调用.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
    echo '<script type="text/javascript"> addOne(); </script>';
?>

Nubmer是:$
//var curVariable=document.getElementById('curVariable').value;
var曲线变量=1;
document.getElementById(“curVariable”).innerHTML=curVariable;
document.getElementByID(“curVariable”).value=curVariable;
函数addOne(){
曲线变量=曲线变量+1;
document.getElementById(“curVariable”).innerHTML=curVariable;
}
函数isNumberKey(evt)
{
var charCode=(evt.which)?evt.which:event.keyCode
如果(字符码>31&(字符码<48 | |字符码>57))
返回false;
返回true;
}
PHP:

<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
    echo '<script type="text/javascript"> addOne(); </script>';
?>

如果要提交号码,可以在表单字段中提交,然后重新构建页面。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)参数包含您返回的内容。

请检查链接您到底想做什么??如何在phpOP中传递函数没有使用jquery,尽管您的
customButton
选择器不正确,应该正确。他已经在使用JavaScript了。Jquery在使用JavaScription时不是必需的,这是非常正确的。也不必用胡桃夹子来敲碎核桃。