Javascript 从td切换到输入,然后使用新值返回td

Javascript 从td切换到输入,然后使用新值返回td,javascript,jquery,Javascript,Jquery,我对这个有点陌生 下面的代码正在运行 将td切换到输入,当单击enter按钮并返回到带有新值的td时,可以编辑值,但当鼠标单击时,只显示输入html代码无值 <script> $('td').dblclick(function (tdin) { var td_data = $(this).html(); var td_dtin = $(this).html('<input type="text" value='+

我对这个有点陌生

下面的代码正在运行

td
切换到输入,当单击enter按钮并返回到带有新值的
td
时,可以编辑值,但当鼠标单击时,只显示输入html代码无值

<script>

    $('td').dblclick(function (tdin) {
        var td_data =  $(this).html();
        var td_dtin =  $(this).html('<input type="text" value='+td_data+'>');
        $('input').keyup(function (enter) {
            var td_edit =  $(this).val();
                if (enter.which === 13) {
                    var td_edit =  $(this).val();
                    $(this).hide(); 
                    var inin=  $(this).replaceWith(td_edit);
                }
        })
    })

</script>

$('td').dblclick(函数(tdin){
var td_data=$(this.html();
var td_dtin=$(this.html(“”);
$('input').keyup(函数(enter){
var td_edit=$(this.val();
如果(输入.which==13){
var td_edit=$(this.val();
$(this.hide();
var inin=$(this).replaceWith(td\u编辑);
}
})
})
尝试使用,而不是:

$('td').dblclick(函数(tdin){
var td_data=$(this.html();
//代码的其余部分。。。
})
尝试使用,而不是:

$('td').dblclick(函数(tdin){
var td_data=$(this.html();
//代码的其余部分。。。
})

在您的td\u数据行上尝试
var td\u data=$(this).text()
是的,ty,它确实很管用!我添加了我的评论作为完整答案,因为这解决了您的问题。接受它将帮助其他人更快地解决同样的问题;)在您的td_数据行上尝试
var td_data=$(this).text()
。是的,泰,它确实很管用!我添加了我的评论作为完整答案,因为这解决了您的问题。接受它将帮助其他人更快地解决同样的问题;)