带有 Ajax 的 Jquery 日期选择器不起作用

Posted

技术标签:

【中文标题】带有 Ajax 的 Jquery 日期选择器不起作用【英文标题】:Jquery datepicker with Ajax is not working 【发布时间】:2014-10-20 16:12:59 【问题描述】:

在我的网站上有很多类别。每个类别页面都有他们的帖子。在这里,我使用了 jQuery datepicker,如果用户想查看 8 月 20 日的帖子,他们点击日历上的特定日期并查看日期帖子。还有一件事,如果我打开一个类别,今天的帖子应该只显示。请检查此代码并帮助我。此代码显示类别的所有帖子,并且日期选择器未检索任何内容。

这是function.php中的mysql查询

 if(isset($_REQUEST['datepost']))
 
 $date = $_POST['date'];

 $res=mysql_query("SELECT * FROM  `wp_posts` WHERE DATE_FORMAT(post_date,  '%m/%d/%Y' ) =  '%m/%d/%Y' AND post_type = 'post'  ORDER BY post_date DESC");
 $pageposts=mysql_fetch_array($res);

 exit();
   
 ?>

这是我的脚本和 PHP 代码:

 <script type="text/javascript">
 $(function() 
 <!--current date posts-->
     var currentTime = new Date();
     var day = currentTime.getDate();
     var month = currentTime.getMonth() + 1;
     var year = currentTime.getFullYear();

    if (day < 10) 
            day = "0" + day;
    

    if (month < 10) 
            month = "0" + month;
    

    var today_date = day + "/" + month + "/" + year;
    var dataString ='date='+today_date;

 $.ajax (
          type: "POST",
          url: "<?php echo home_url(); ?>/?datepost",
          data: dataString,

          success: function(data) 
              $('#testdiv').html(data);
          
            );     <!--End current date posts-->


 <!--select date posts-->
    $("#datepicker").datepicker (
            onSelect: function(dateTypeVar, inst) 
                    var dateAsObject =   $(this).val();
                    var dataString ='date='+dateAsObject;
                    $.ajax (
          type: "POST",
          url: "<?php echo home_url(); ?>/?datepost",
          data: dataString,
          success: function(data) 

              $('#testdiv').html(data);
          
            );  <!--End select date posts-->
    
    );
 );
 </script>

PHP 编码:

 Date: <input type="text" id="datepicker" size="30"/>
  <?php while (have_posts()) :the_post();

 ?>
     <div id="testdiv"> 
  <div class="featuredpost">


 <div class="cat-block">
         <a href="<?php echo the_permalink();?>" rel="bookmark"> <?php the_post_thumbnail( 'homepage-catpage' ) ?></a>

         <h2 class="posttitle"> <a href="<?php echo the_permalink();?>" rel="bookmark" title="" ><?php echo $key_1_values = get_post_meta($postid, '_visual-subtitle', true ); ?></a>
         </h2>

              <p> <?php $content = get_the_excerpt();
                                   $contentrecord=htmlspecialchars_decode(strip_tags(stripslashes($content)));
                           echo substr($contentrecord, 0, 350); ?></p>
          <p class="postmeta"><span class="meta_date"><?php the_time('Y/m/d g:i:s A'); ?>
          <input id="name" type="hidden" value="<?php echo $postid; ?>" name="post__id">
          <p>

          </span><span class="meta_permalink"><a href="<?php echo the_permalink(); ?>" title="111" rel="bookmark">التفاصيل</a>     </span>     </p>

 </div>


 </div>
 </div>  


 <?php endwhile;
 wp_reset_query();?>
 </div>    

【问题讨论】:

id 为 'datepicker' 的 html 元素在哪里? 对不起,我没有写。我是 ajax 新手。你能解释一下我犯了什么错误吗 使用控制台并粘贴你得到的错误? 我没有收到任何错误。现在它正在显示所有类别的帖子... 这是我的分类页面链接:dev.clonet.in/seyassah/category/international/ 【参考方案1】:
<?php if(isset($_REQUEST['datepost']))
 
 $date = date('m/d/Y',strtotime($_POST['date']));

 $res=mysql_query("SELECT * FROM  `wp_posts` WHERE DATE_FORMAT(post_date,  '%m/%d/%Y' ) =  $date AND post_type = 'post'  ORDER BY post_date DESC");
 $pageposts=mysql_fetch_array($res);

 exit();
   
?>

为 post_date 列提供实际值,例如 DATE_FORMAT(post_date, '%m/%d/%Y' ) = $date

【讨论】:

以上是关于带有 Ajax 的 Jquery 日期选择器不起作用的主要内容,如果未能解决你的问题,请参考以下文章

在codeigniter中使用jquery的日期选择器不起作用

JQuery-UI 日期选择器不起作用

日期选择器不起作用[重复]

模式中的引导日期选择器不起作用

jQuery 选择器,包括属性和同级选择器不起作用

select2 下拉框与 jQuery 日期选择器不兼容?