【问题标题】:Ajax/post request on an incremented id递增 id 上的 Ajax/post 请求
【发布时间】:2011-12-10 03:41:33
【问题描述】:

我正在为图像、文本和其他类型生成自定义字段,您可以使用 javascript 删除这些字段。但是现在,当我删除图像字段时,我还需要删除文件夹中的图像文件。

这是我的领域的样子:

<input type='hidden' id='img_dlt_".$row2->rank."' name='img' value='".$row2->content."'/>
<div id='deletebtn'>delete this</div>

ID 有一个递增的数字。当我按下“deletebtn”div 时,我需要发出一个 Ajax 请求来告诉 PHP,感谢输入“值”,删除文件夹中的文件

所以我试过这个:

$("#deletebtn").live("click", function(){
      $(this).parent("li").remove();

      var img_to_delete = $("my_field_id").val();

      $.ajax({ 
          url : "/mysite/admin/delete_img_function",
          type : 'POST',
          data : img_to_delete,
          complete: function(success){
               alert(img_to_delete);
          },
      });

但它不起作用,因为我有很多图像字段,我需要删除一个特定的,我不知道如何检索我要删除的字段的特定递增 ID

任何帮助将不胜感激!

【问题讨论】:

  • 如何选择要删除的图片?他们有复选框吗?
  • 没有图像名称在隐藏字段的值中,我需要检索它以使用 PHP 删除它

标签: php jquery ajax input delete-file


【解决方案1】:

您的代码有 2 个问题,
1. 当您通过隐藏字段的 id 检索值时,您必须使用 # $("#my_field_id") 而不是 $("my_field_id")。
2. 因为要发布表单数据,数据必须有一个名称,您可以使用 php 检索它。这里在编辑后的代码中,我将其命名为 id:

$("#deletebtn").live("click", function(){
      $(this).parent("li").remove();

      var img_to_delete = $("#my_field_id").val();

      $.ajax({ 
          url : "/mysite/admin/delete_img_function",
          type : 'POST',
          data : {id: img_to_delete},
          complete: function(success){
               alert(img_to_delete);
          },
      });

【讨论】:

    【解决方案2】:

    ajax调用的用法不正确,
    考虑一下:-

    data : {id:img_to_delete},
    

    来自文档:- http://api.jquery.com/jQuery.ajax/

    在 PHP /mysite/admin/delete_img_function,
    然后可以参考$_POST[id]

    【讨论】:

    • 也许它不正确,但我只想检索隐藏字段的“值”并通过 ajax 而不是 id 将其传输到 PHP
    • 不,您没有分配正确的 $_POST[$key],PHP 无法呈现
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    相关资源
    最近更新 更多