Javascript Wordpress jQuery调用未触发
我不明白为什么这个ajax调用没有在我的课堂上启动。我想我有点不对劲,或者我必须在初始插件文件中添加动作jQuery调用,还是什么?我不知所措。我把班级建错了还是怎么了?反馈会很好。如果需要,我可以添加其他文件或进行更详细的解释 administration.phpJavascript Wordpress jQuery调用未触发,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,我不明白为什么这个ajax调用没有在我的课堂上启动。我想我有点不对劲,或者我必须在初始插件文件中添加动作jQuery调用,还是什么?我不知所措。我把班级建错了还是怎么了?反馈会很好。如果需要,我可以添加其他文件或进行更详细的解释 administration.php class Administration { public function __construct() { // Add Administration Page add_action( 'admi
class Administration {
public function __construct() {
// Add Administration Page
add_action( 'admin_menu' , array ( $this , 'plugin_admin_add_menu'));
}
public function plugin_admin_add_menu() {
// Administration Page creation
$hook = add_menu_page(
'Image Uploader Display',
'Image Uploader Display',
'manage_options',
'image-uploader-display',
array( $this , 'image_uploader_display_administration_main'), '');
// Adds styles and scripts to Administration Page
add_action("load-" . $hook, array( $this, 'image_uploader_display_administration_styles_scripts' ) );
}
public function image_uploader_display_administration_main() {
require_once ( PLUGIN_FOLDER . '/administration/templates/main.php' );
}
public function image_uploader_display_administration_styles_scripts(){
wp_enqueue_style('image-uploader-display-administration', PLUGIN_DIR . 'administration/css/image-uploader-display-administration.css', array(), '0.0.0', 'all');
wp_enqueue_script( 'image-uploader-display-administration', PLUGIN_DIR . 'administration/js/image-uploader-display-administration.js', array('jquery'), null, true);
wp_localize_script( 'image-uploader-display-administration', 'set_post_types', array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ) );
**Adding action ->** add_action( 'wp_ajax_set_post_types', array( $this, 'image_uploader_display_administration_set_post_types' ) );
}
public function image_uploader_display_administration_set_post_types() {
echo "Set Post Types Ajax Return";
wp_die();
}
}
$IUDadministration = new Administration();
image-uploader-display-administration.js
(function($) {
$("#admin-iud #set_post_types").on('click', function(){
// alert("Here works");
$.ajax({
url: set_post_types.ajax_url,
type: 'POST',
data: {
action: set_post_types
},
success: function(response) {
alert(response);
}
});
})
})(jQuery);
image-uploader-display.php(初始插件文件)
很明显,某些设置错误或者我不知道应用程序中包含了什么…
jQuery
?或者你的控制台中有任何错误吗?试试这样的钩子可以解决你的问题-----对于管理员站点,你可以直接在jQuery
代码中使用ajaxurl
,无需对其进行本地化,因为在admin WP中默认加载该变量,希望这能让你快速返回。包括jQuery。投赞成票的答案是不正确的。控制台里有400个错误的请求。我修好了。谢谢各位。我没有关于动作的引语:“设置帖子类型”。我真的不喜欢WP在任何方面。再次感谢。。。
define('PLUGIN_FOLDER', dirname(__FILE__) );
define('PLUGIN_DIR', plugins_url() . '/image-uploader-display/');
define('PLUGIN_VERSION', '1.0');
define('PLUGIN_BASE_FILENAME', plugin_basename(__FILE__));
class Image_Uploader_Display {
public function __construct() {
// Include Administration Page
include_once( PLUGIN_FOLDER . '/administration/administration.php' );
//
//
}
}
$IUD = new Image_Uploader_Display();
?>