我正在尝试开发一个将变量发送到我的服务器的WordPress插件。 到目前为止,如果我使用我的代码作为单独的PHP文件,而不是在我的脚本中工作得很好..它发送变量并从远程PHP文件接收结果。
如果我在自定义WordPress插件中放入相同的代码,则不会收到任何内容。
我的代码:
<script>
jQuery(document).ready(function(){
jQuery(".adminpnlnshbutton").click(function(){
var usermail = jQuery('#uemail').val();
var userkey = jQuery('#ukey').val();
var dataString = 'usermail='+ usermail + '&userkey='+ userkey;
$.ajax({
type: "POST",
url: "http://www.myremotedomain.co.uk/check.php",
data: dataString,
crossDomain: true,
dataType: 'html',
success: function(data) {
alert (data);
}
});
});
});
</script>
并检查PHP:
$m = $_POST['usermail'];
$k = $_POST['userkey'];
$s = " | ";
echo $m . $s . $k;
作为WordPress插件:
<?
add_action('admin_menu', 'test_plugin_setup_menu');
function test_plugin_setup_menu(){
add_menu_page( 'Test Plugin Page', 'Tes Plugin', 'manage_options', 'test-plugin', 'test_init' );
}
function test_init(){
if (is_user_logged_in()) {
?>
<input name="uemail" type="text" id="uemail" value="email" />
<input name="ukey" type="text" id="ukey" value="activation key" />
<div class="adminpnlnshbutton">SEND</div>
<script>
jQuery(document).ready(function(){
jQuery(".adminpnlnshbutton").click(function(){
var usermail = jQuery('#uemail').val();
var userkey = jQuery('#ukey').val();
var dataString = 'usermail='+ usermail + '&userkey='+ userkey;
$.ajax({
type: "POST",
url: "http://www.myremotedomain.co.uk/check.php",
data: dataString,
crossDomain: true,
dataType: 'html',
success: function(data) {
alert (data);
}
});
});
});
</script>
<?
}
}
?>
知道为什么我无法接收插件中的数据?
答案 0 :(得分:0)
解决了......我不得不添加jquery
function pw_loading_scripts_wrong() {
echo '<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>';
}
add_action('admin_head', 'pw_loading_scripts_wrong');