我正在wordpress中运行wpdb select查询,并从文本框中获取其参数。只要我按下搜索按钮,结果就会显示出来。但是我想在不刷新页面的情况下对ajax做同样的操作。我尝试了所有的方法,但是页面仍然刷新。
下面是我的代码
//Jquery代码
jQuery(document).ready(function() {
jQuery("#Submityourskill").click(function(){
jQuery.post(yes.ajaxurl,{action : 'doit'},
function( response) {//start of funciton
// alert(response);
//jQuery("#searchtextbox").val(response);
jQuery("#result").append(response);
jQuery("#textarea").html(response);
return false;
});//end of function
}); // click button function finishing here
}); //end of main loop
html
<form action="" method="post">
<div><input maxlength="200" name="secretcode" size="200" type="text" value="" placeholder="Type Here !" />
<input id="Submityourskill" name="Submit" type="submit" value="Search Record" /></div>
</form>
<div id="result"></div>
//php函数
function doit() {
if(isset($_POST['secretcode'])!= ''){
if($_POST['Submit']) {
$secretcode=$_POST['secretcode'];
global $wpdb;
$sql = "SELECT * FROM wp_store_locator WHERE sl_description='$secretcode'";
$results = $wpdb->get_results($sql) or die(mysql_error());
foreach( $results as $result ) {
echo $result->sl_description;
}
exit();
}
}
下面是我使用过的其他php代码
PHP代码
add_action( 'wp_ajax_nopriv_doit', 'doit');
add_action( 'wp_ajax_doit', 'doit' );
下面是加入jQuery页面的代码
function add_myjavascript(){
wp_register_script( 'globals', get_stylesheet_directory_uri() . "/js/ajax-implementationn.js", array( 'jquery' ) );
wp_enqueue_script( 'globals' );
// use wp_localize_script to pass PHP variables into javascript
wp_localize_script( 'globals', 'yes', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );
}
add_action( 'init', 'add_myjavascript' )
谢谢大家,并向…致意!
听一下表单的submit
事件,让自己更轻松。除了单击“提交”按钮,还有其他提交表单的方法。
您正在寻找的是防止使用事件执行默认操作。preventDefault()
:
jQuery(document).ready(function() {
jQuery("#myform").submit(function(e){
e.preventDefault();
jQuery.post(yes.ajaxurl,{action : 'doit'}, function( response) {
// alert(response);
//jQuery("#searchtextbox").val(response);
jQuery("#result").append(response);
jQuery("#textarea").html(response);
return false;
});//end of function
}); // submit form function finishing here
}); //end of main loop
并为您的表单提供一个id
,以便您可以针对它:
<form id="myform" action="" method="post">
我的任务是使用lucene在我们的产品表中搜索。我已经创建了一个索引,正在使用带有多个字段的QueryParser进行搜索,但结果不是我所需要的。我有一个存储为LM10的产品,但如果搜索词是LM 10,我希望能够找到它,但如果搜索词是Fred LM10或Fred LM 10,它也必须能够匹配。你知道我如何在Lucene做到这一点吗。 提前谢谢
我有以下格式的弹性搜索文档 } } 我的要求是,当我搜索特定字符串(string.string)时,我只想获得该字符串的FileOffSet(string.FileOffSet)。我该怎么做? 谢谢
我正在创建一个旅游主题,我在其中创建了一些自定义帖子,如城市、地点、目的地和酒店,为了向这些自定义帖子添加更多信息,我创建了几个元框,其中包含一些元键,如地址、租金、酒店房间以及如何到达城市、目的地、,现在我在索引页上有一个搜索表单,可以根据酒店自定义帖子的自定义元键搜索酒店,我必须在函数中创建自己的自定义搜索函数。通过查看创建自定义搜索表单的wordpress教程,我只能有一个GET变量“?s=
我正在LDAP服务器上工作。它有弹性搜索。我必须用一些Javascript代码(JSON格式)发送查询。 这是我的查询: 我试图打印所有结果,其中“server”=“server\u name”(该字段是server:server\u name…)。我认为关于弹性搜索的文档太小了。我找到了一些文档,但都是一样的,对新用户没有帮助。这个例子太简单了。 此查询返回所有结果,包括任何筛选器。 Ps:这就
我试图为一个文档编制索引,该文档有三个字段:first_name、last_name、占领类型“keyword”,并分别有值XYZ、ABC和DEF。 我已经使用过滤器编写了查询,以便与和条件完全匹配,如下所示, 这必须返回一个文档,但不返回任何内容。 我对同一个操作有另一个查询, 这将返回一个文档。 根据Elasticsearch文档,我知道查询和筛选的区别在于筛选不会对结果打分。我不知道为什么第
这是我得到的响应输出- 2018-11-20 18:25:34+0530:>{“查询”:{“布尔”:{“必须”:[{“匹配”:{“状态”:“活动”}},{“匹配”:{“is_published”:true}},{“匹配”:{“payed”:true}},{“match”:{“adverse_type”:“sell”}}]}},“排序”:[{“updated_at”:{“order”:“desc”}