jquery中的当前对象值

时间:2010-03-23 13:38:51

标签: jquery html jquery-ui jquery-selectors jquery-validate

全部,

在下面的代码中如何编辑当前的添加值。即,在编辑函数中如何获取td中的值。另外,我们如何检查重复项。

  <script type="text/javascript">
  function edit(obj)
  {
     //   var ele= obj.parentNode ;
        alert(obj.innerHTML);
     var htm = '<textarea name="modal" id="modal" rows="10" cols="10" >'+ele.html+'</textarea>';
     $dialog.html(htm)
           .dialog({
              autoOpen: true,
              position: 'center' ,
              title: 'EDIT',
              draggable: false,
              width : 300,
              height : 400,
              resizable : false,
              modal : true,
              buttons: { "Save" : function() { if($('#modal').val() != ''){ obj.innerHTML=$('#modal').val() ;$dialog.dialog('close');} else {alert('i++'+$('#modal').val()+'++');} } }
           });
     $dialog.dialog('open');
  }


  $(document).ready(function() {
        var flag=0;

              if (flag == 0)
              {
                 var html = '<input type="text" name="val" id="val" />&nbsp;&nbsp;&nbsp;<input type="button" value="Add" id="add"><br>';
                 $('#useroptions').append(html);
                 flag=1;

                 $('#add').click(function(){
                    var a = $('#val').val();
                    if (a == '')
                    {
                       alert('Enter options');
                    }
                    else
                    {
                       var section= '<tr class="clickable"><td id="userval" BGCOLOR="#FF6699">' + a + '&nbsp;&nbsp;&nbsp; <IMG SRC="edit.gif" onclick="javascript:edit(this);" >&nbsp;&nbsp;&nbsp;<IMG SRC="close.gif"
  onclick="javascript:del(this);" ></td></tr>';
                       $('#useroptions').append(section);
                    }
                      }
  }
  });
  });
  </script>

<table id="template">
<tr><td>
<div id="useroptions"></div>
</tr></td>

</table>

1 个答案:

答案 0 :(得分:0)

首先:您将笨重的内联onXXX处理程序与更优雅的jQuery事件处理程序混合在一起。为什么呢?

至于您的“如何获取td中的值”问题:edit(obj)会将图像传递为obj参数,因为onclick位于img上1}}元素。你可以找到这样的容器tdvar td = $(obj).closest('td')。然后得到它的.text()或任何你想要的东西。

但是再次:你可以使用live binding更好地做到这一点。