我想在点击按钮后运行函数。所有的都在一节课上。
JQUERY
jQuery(\'#text2\').click(function() {
var data = {
\'action\': \'myfunction\',
\'whatever\': $button.data(\'text2\'),
};
// since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
jQuery.post(ajaxurl, data, function(response) {
alert(\'Got this from the server: \' + response);
});
});
PHP
public function myfunction() {
$write = intval( $_POST[\'whatever\'] );
$write++;
echo $write;
wp_die();
}
HTML
<button id="text2" value="1500"> test </button>
最合适的回答,由SO网友:Steve 整理而成
为了使这项工作按预期进行,您需要在构造函数中添加以下行(取决于您的需求)
add_action( \'wp_ajax_myfunction\', array($this, \'myfunction\') );
add_action( \'wp_ajax_nopriv_myfunction\', array($this, \'myfunction\') );
请注意
wp_ajax_nopriv_myfunction
为未登录的用户执行。另一个仅针对登录用户执行。
你还需要在JS中检查一下,ajaxurl
返回您的ajax URL。
否则,您需要公开该URL以便在JS中使用。您可以按照此处的法典进行操作:https://codex.wordpress.org/Function_Reference/wp_localize_script
你需要打电话wp_die();
在PHP函数的末尾。