我有一个 php 函数,我想从我有的 Html 按钮运行它。php 函数位于与 Html 按钮不同的文件中。所以我设法做到了这一点:<input type="submit" name="test" id="bt1" value="RUN" /><br/>但这不是我想做的。我想调用 php 函数:<button id="bt1" class="button button5">< Random </button>因为还有其他与按钮相关的操作需要同时运行。旁注:我的 php 函数从 json 文件中获取信息。我有3个文件。文件 1 (AF.php) 这是按钮所在的位置 文件 2(Display.php) 这是我的 jquery/javascript/ajax 脚本所在的位置 文件 3(Names.php) 这是 php 函数所在的位置。我想使用文件 1 中的按钮来运行文件 3 中的 php 函数。所以这是我迄今为止尝试过的:文件 1(AF.php) button id="bt1" class="button button5">< R30K</button>文件 2(Display.php)$(document).ready(function () { $("#bt1").on("click", (function () { getName("Names.php"); }) }); function getName(Names.php) { $.ajax({ url:"Names.php" + Names.php, success:function (Names.php) { $("#res" + Names.php).html(result) } });文件 3(Names.php)<?php function group1(){ $jsondata = file_get_contents("Clients.json"); $json = json_decode($jsondata, true); $output = '<ul>'; foreach($json['Reps']as $reps){ $output .='<h4>' .$reps['Client']."<h4>"; $output .= "<li>".$reps['repCode']."</li>"; } $element = $json['Reps'][array_rand($json['Reps'])]; echo $element['Client']; echo " "; echo $element['repCode']; } if(array_key_exists('bt1',$_POST)){ group1(); } ?>期望的结果是我可以使用文件 1 中的 Html 按钮从文件 3 运行我的函数。
1 回答
慕无忌1623718
TA贡献1744条经验 获得超4个赞
带有该按钮的 HTML 和 jQuery 代码必须位于浏览器加载的同一文档中,或者将它们放在同一个文件中,或者使用 php include/require。
该 jQuery 代码将无法运行,因为您将“Names.php”放置在各处(为什么?)。试试这个:
$( function(){
$("#bt1").click(function() {
$.ajax({
url: 'Names.php',
type: 'get',
success: function(data) {
$("#res").html(data);
},
});
});
});
这会将 ajax 响应字符串放入任何带有id="res".
代码已经过测试并且有效。
编辑:
我刚刚注意到您$_POST在 php 脚本中使用来检查按钮是否被单击,因此您必须修改 jQuery ajax 函数:
更改type: 'get',为type: 'post',
data: 'bt1=1',之后添加'type: 'post'。
- 1 回答
- 0 关注
- 188 浏览
添加回答
举报
0/150
提交
取消