使用按钮onClick和参数/AJAX调用PHP函数?

使用按钮onClick和参数/AJAX调用PHP函数?,php,ajax,function,parameters,Php,Ajax,Function,Parameters,您好,当用户点击按钮时,我想调用我的函数下载,基本上: <input type='button' name='Release' onclick="document.write('<?php downloadFichier($tab1, $t2) ?>');" value='Click to Release'> 您应该使用onclick事件调用js函数,如下所示: <input type='button' name='Release' onclick="downlo

您好,当用户点击按钮时,我想调用我的函数下载,基本上:

<input type='button' name='Release' onclick="document.write('<?php downloadFichier($tab1, $t2) ?>');" value='Click to Release'>

您应该使用onclick事件调用js函数,如下所示:

<input type='button' name='Release' onclick="downloadFichier(param1, param2)" value='Click to Release'>
function downloadFichier(param1, param2){

        $.ajax({
            type: 'POST',
            url: 'file_product.php',
            data: "param1=" + param1 + "&param2=" + param2,
            success: function(data) {
                $("p").text(data);
            }
        });

您可以从$\u请求数组中通过名称(param1,param2)获取PHP脚本中的参数。

您应该使用onclick事件调用js函数,如下所示:

<input type='button' name='Release' onclick="downloadFichier(param1, param2)" value='Click to Release'>
function downloadFichier(param1, param2){

        $.ajax({
            type: 'POST',
            url: 'file_product.php',
            data: "param1=" + param1 + "&param2=" + param2,
            success: function(data) {
                $("p").text(data);
            }
        });

您可以从$_请求数组中通过名称(param1,param2)获取PHP脚本中的参数。

@PaulBasenko启发了这个替代方案,您可以通过一些
设置参数:

HTML

<form action="#" method="POST" id="form1">
    <input type="hidden" name="tab1" value="<?= $tab1 ?>" />
    <input type="hidden" name="t2" value="<?= $t2 ?>" />
    <button type="submit">Click to Release</button>
</form>
PhP

<?php
    $tab1 = (isset($_POST['tab1'])) ? $_POST['tab1'] : null;
    $t2 = (isset($_POST['t2'])) ? $_POST['t2'] : null;

    // process & return json_encoded data
?>

它是如何工作的?


单击按钮时,它是一个
type=“submit”
,它将触发其父
表单的
submit
事件。然后,jQuery侦听此事件,并立即使用
èvent.preventDefault()
阻止它,以便调用Ajax而不是对php文件的常规同步调用。

@PaulBasenko启发了这个替代方案,您通过一些
设置参数:

HTML

<form action="#" method="POST" id="form1">
    <input type="hidden" name="tab1" value="<?= $tab1 ?>" />
    <input type="hidden" name="t2" value="<?= $t2 ?>" />
    <button type="submit">Click to Release</button>
</form>
PhP

<?php
    $tab1 = (isset($_POST['tab1'])) ? $_POST['tab1'] : null;
    $t2 = (isset($_POST['t2'])) ? $_POST['t2'] : null;

    // process & return json_encoded data
?>

它是如何工作的?


单击按钮时,它是一个
type=“submit”
,它将触发其父
表单的
submit
事件。然后,jQuery侦听此事件并立即使用
èvent.preventDefault()
阻止它,以便调用Ajax而不是对php文件的常规同步调用。

2参数:您的参数是什么类型的?串?物体?整数?您需要包含jquery,是吗?您在浏览器的开发人员工具中看过AJAX请求/响应吗?是否报告了任何错误?您是否在web服务器上运行此功能?当您使用jQuery时,永远不需要内联JavaScript。2参数:您的参数是什么类型的?串?物体?整数?您需要包含jquery,是吗?您在浏览器的开发人员工具中看过AJAX请求/响应吗?是否报告了任何错误?您是否在web服务器上运行此功能?当您使用jQuery时,永远不需要内联JavaScript。