`
jaybril
  • 浏览: 48637 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

JS中一个关于ID取值的低级错误

 
阅读更多

Jsp代码:  

 

<table>

    <s:iterator value="list" id="list">
     <tr>
      <td class="td1"><a class="a"
       href="ShowBlogAction?log_id=<s:property  value="#list.log_id"/>"><s:property
         value="#list.title" /></a></td>
      <td class="td2"><s:property value="#list.lasttime" /></td>
      <td><a class="del" href="#"><img
        src="/BlogSystem01/images/del.png" /></a> <input type="hidden"
       id="log_id"  name="log_id" value="<s:property  value="#list.log_id"/>" /></td>
     </tr>
    </s:iterator>

   </table>

 

JS代码:

 

$(function() {
 $(".del").click(function() {
  if (!confirm("确认要删除?")) {
   window.event.returnValue = false;
  } else {

   var log_id = $("#log_id").val();
   alert(log_id);
   if (log_id == "") {
    alert("ss操作失败,请重试!");
   } else {
    $.ajax({
     type : "POST",
     url : "DelLog.action",
     data : {
      log_id : log_id
     },
     dataType : 'json',
     success : function(data) {
      if (data.ok == 1) {
       alert("删除成功");
       location.href = "page.action";

      } else {
       alert("操作失败,请重试!");
      }
     }
    });
   }

  }
 });
});

 

想法:点击时,获取id=“log_id”的值,也就是博客的ID值,传给Action,进行删除操作。

错误:因为显示列表里,每一个文章都有一个ID=“log_id”,所以在点击时,根本就无法确定传到后台的是哪个ID的值,最有可能是列表的第一个ID的值,所以这个低级错误导致删除了错误的数据!!!!

修改:给点击按钮加一个name属性  name=“#list.log.log_id”当点击某一个删除按钮时,获取该按钮的name值,也就是log_id的值了~~

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics