Php 根据第一个ajax的结果触发第二个ajax
我在WordPress工作 我有下面的表单1,这是一个搜索表单,当我按下搜索键时,我会用AJAX得到结果 现在,结果行有一个按钮或链接,单击该按钮或链接将触发另一个AJAX调用,并输入第一个表单的post值 因此涉及到两个表单,第二个表单从前一个表单获取输入,单击第一个表单搜索结果中的链接,应该触发第二个ajax进程 第二个ajax不起作用,它只是刷新页面 下面是我的第一个搜索表单的html代码和AJAX以及第二个表单的其他代码,这些代码是在按下第一个表单搜索结果的链接时触发的 第一种形式Php 根据第一个ajax的结果触发第二个ajax,php,ajax,wordpress,forms,Php,Ajax,Wordpress,Forms,我在WordPress工作 我有下面的表单1,这是一个搜索表单,当我按下搜索键时,我会用AJAX得到结果 现在,结果行有一个按钮或链接,单击该按钮或链接将触发另一个AJAX调用,并输入第一个表单的post值 因此涉及到两个表单,第二个表单从前一个表单获取输入,单击第一个表单搜索结果中的链接,应该触发第二个ajax进程 第二个ajax不起作用,它只是刷新页面 下面是我的第一个搜索表单的html代码和AJAX以及第二个表单的其他代码,这些代码是在按下第一个表单搜索结果的链接时触发的 第一种形式 &l
<form id="mydispimage" action="" method="post">
<select name="category" id="category" style="width:250px; background-color:lightgrey;">
<option value="" disabled="disabled" selected="selected" ">Select category</option>
<option value="Cutie Pie">Cutie Pie</option>
<option value="Chubby">Chubby</option>
<option value="Dimples">Dimples</option>
</select>
<input type="submit" id="displayimage" name="displayimage" value="Search" style="margin-left:15px; margin-bottom:15px;">
</form>
<div id="myresult" style="margin-bottom:15px; position:relative;"></div>
好的,首先,如果您使用Ajax技术,您需要其他类型的“发送”按钮,即非提交类型(这将刷新您的页面)。第二,如果您想触发多个Ajax请求,那么所有这些请求都应该在同一个页面上,即第二个Ajax请求将在第一个Ajax请求的成功函数中工作。最后,如果希望将数据作为json返回,请不要忘记放置适当的头 我们需要查看处理表单提交的Java脚本。通过ajax提交第二个表单的javascript事件处理程序可能不正确。如果这不能解决问题(例如,表单是无效的HTML),则应修复语法错误并编辑帖子。
$results = $wpdb->get_results($wpdb->prepare($sql)) or die(mysql_error());
if (is_array($results) && count($results) > 0) {
$form = "";
foreach($results as $result) {
$form.= '<form id="voteform" action="" method="post">';
$form.= "<input name='category' type='hidden' value='$result->category'>";
$form.= "<img src='$result->path' width='150' height='150' >" . '<br /><br />';
$form.= "<input name='id' type='hidden' value='$result->uid'>";
$form.= "<input name='comp' type='hidden' value='$result->competition'>";
$form.= $result->username . '<br />';
$form.= $result->votessum . '<br />';
$form.= "<input style='margin-bottom:30px;' value='vote' name='submit' type='submit'/></form>";
} //end of foreach
$response['form'] = $form;
}
echo json_encode($response);
die();
// register & enqueue a javascript file called globals.js
wp_register_script( 'votess', get_stylesheet_directory_uri() . "/js/ajaxinsert.js", array( 'jquery' ) );
wp_enqueue_script( 'votess' );
// use wp_localize_script to pass PHP variables into javascript
wp_localize_script( 'votess', 'yes', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );
}
function votes()
{
echo json_encode("pakistan zindabad");
die();
$ccc = $_POST['comp'];
$cat = $_POST['category'];
global $wpdb;
$compp = $wpdb->get_var("SELECT competition FROM competition ORDER BY cid DESC LIMIT 1");
$userid = $_POST['id'];
$myvote = 1;
if ($wpdb->insert('zvotes', array(
'zvotes' => $myvote,
'zcompetition' => $compp,
'aid' => $userid
)) == false) {
wp_die(json_encode('Database Insertion failed'));
die();
}
else {
echo json_encode('your vote was successfully recorded');
die();
}
}