全部,
在下面的代码中如何编辑当前的添加值。即,在编辑函数中如何获取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" /> <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 + ' <IMG SRC="edit.gif" onclick="javascript:edit(this);" > <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>
答案 0 :(得分:0)
首先:您将笨重的内联onXXX
处理程序与更优雅的jQuery事件处理程序混合在一起。为什么呢?
至于您的“如何获取td中的值”问题:edit(obj)
会将图像传递为obj
参数,因为onclick
位于img
上1}}元素。你可以找到这样的容器td
:var td = $(obj).closest('td')
。然后得到它的.text()
或任何你想要的东西。
但是再次:你可以使用live binding更好地做到这一点。