在wordpress中用ajax提交帖子

时间:2013-11-04 12:49:34

标签: php jquery ajax wordpress

这是我关于Stackoverflow的第一个问题,感谢所有人让我们的生活更轻松。对不起我的英语,这不是很好。

我的服务器中有这个代码:

<html>
  <head>
    <title></title>
    <meta content="">
    <style></style>
  </head>
  <body>

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>


<script>
$(document).ready(function(){
$("#newsletter").submit(function(){
$.ajax(
{
type: "POST",
url:"http://mailing.estudiohernangene.com/lists/?p=subscribe&id=2",
data: $('#newsletter').serialize(),
success:function(result)
{
$("#mensaje_ok").html("¡Hecho!");
}
});
$("#mensaje_ok").html("¡Hecho!");
$("#email").val("");
$("#enviar").fadeToggle();
return false;
});
});
</script>

<div id="inserccion" style="float:left; border:0px solid; vertical align:middle; padding: -10px 0 0 0;">
<form id="newsletter" method="" action="">
      <input type="hidden" name="VerificationCodeX" value="" />
      <input type="hidden" name="list[2]" value="signup">
      <input type="hidden" name="listname[3]" value="todos"/>
      <input type="hidden" name="subscribe" value='subscribe'/>
      <span style="padding:0 5px 0 0; vertical-align: middle;">Newsletter:</span>
      <input type="text" style="" value="" size="20" name="email" id="email" placeholder="Suscr&#237;bete con tu email">
      <input class="button" type="submit" id="enviar" value="OK" name="submit">
</form>
</div>
<span id="mensaje_ok" style="float:left; padding: 2px 0 0 0;"></span>

</body>
</html>

如果我为原始库更改了Wordpress的jquery库,则Wordpress无法正常工作。

<script src="http://www.estudiohernangene.com/wp-includes/js/jquery/jquery.js?ver=1.10.2"></script>

示例在此网址中:

http://www.estudiohernangene.com/prueba_ok.php

http://www.estudiohernangene.com/prueba_ko.php

发生了什么事?

谢谢!

胡安米。

1 个答案:

答案 0 :(得分:0)

使用

 jQuery(...

而不是

$(...

<script>
jQuery(function($) {
jQuery(document).ready(function(){
jQuery("#newsletter").submit(function(){
jQuery.ajax(
  {
  type: "POST",
  url:"http://mailing.estudiohernangene.com/lists/?p=subscribe&id=2",
  data: jQuery('#newsletter').serialize(),
  success:function(result)
 {
 jQuery("#mensaje_ok").html("¡Hecho!");
}
});
 jQuery("#mensaje_ok").html("¡Hecho!");
 jQuery("#email").val("");
 jQuery("#enviar").fadeToggle();
 return false;
 });

 });
</script>

这应该有效