javascript - 动态更改帖子的内容(CMS)

标签 javascript php jquery ajax

我正在尝试创建一个简单的 CMS。编辑帖子工作正常,但我正在努力如何切换您正在编辑的“当前”帖子(使用 ajax)。

我发现我可以为每个“概览”项(使用 css 隐藏)添加一个包含当前帖子 ID 的额外输入字段。

我在寻找什么(或其他解决方案):如果单击其中一个“overview-post-box”,使用 jquery/js 找到类为“post-id”的元素(当然在那个特定项目中).并向包含该 ID 的另一个页面发送 XHR 请求,这将返回放置在“编辑帖子”字段中的请求帖子。

欢迎提出任何想法!提前致谢!

<?php foreach($projects as $project){ ?>
    <a href="<?php echo $project['project_link'] ?>" class="overview-post-box">
        <div class="overview-post">
           <div class="post-id"><?php echo $project['project_id']; ?></div>
               <div class="title">
                   <?php echo $project['project_title']; ?>
               </div>
               <div class="content">
                  <?php echo substr($project['project_content'], 0, strpos($project['project_content'], ' ', 40)) ?>
               </div>
        </div>
   </a>
<?php }; ?>

The result

最佳答案

有很多方法可以完成这个任务,特别是 VueJs 听起来像是完成这个任务的赢家,但对于 jQuery,我认为你可以做这样的事情。

  1. 首先将您项目的 ID 附加到数据属性
<a data-id="<?php echo $project['project_id']; ?>" href="<?php echo $project['project_link'] ?>" class="overview-post-box">

2.- 绑定(bind) jQuery 处理程序以获取发布数据并更新您的表单元素。

$(document).ready(function(){
   $('.overview-post-box').click(function(event){
      event.preventDefault(); //Stop default <a> behavior 
      var id = $(this).data('id'); //get the current clicked post id
      //do an ajax request to fetch post data
      $.get('/getpostdata.php?id='+id,function(response){
       //return a json from your php side something like
       // {data: { title: 'post title', body: 'post body' }

      /* asign the json values to your inputs */
      $('your_input_class or id to the hidden id').val(id);
      $('your_input_class or id to the title').val(response.data.title);
      $('your_input_class or id to the body').val(response.data.body);
      }
   });
});

关于javascript - 动态更改帖子的内容(CMS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40998328/

相关文章:

php - WordPress session 在 Mozilla Firefox 中丢失

php - 如何在 Apigen 中排除多个文件夹?

php - Laravel-SQLSTATE[23000] : Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails

javascript - jQuery动态分页打破其他Javascript

javascript - JS整页旋转

javascript - 在可编辑小部件中抓取焦点/文本输入

javascript - 在reactjs中,数组或迭代器中的每个子元素都应该有一个唯一的 "key"prop

javascript - 在这种情况下如何减少工作?

javascript - 在它旁边的悬停图像显示 div

javascript - JavaScript/Jquery 中句子的第一个字母大写