我希望通过将文本转换为textfield来使文本可编辑。我只是想在我的浏览器中尝试它,所以我复制它并将其粘贴到Dreamweaver中,但它不起作用:
你可以在这里找到它:http://jsfiddle.net/cnuDh/
但它不起作用
代码在
之下<label id="edit" style="cursor:pointer; color:blue;">
edit
</label>
<table>
<tr>
<td>First Name:</td>
<td>John</td>
</tr>
<tr>
<td>Last Name:</td>
<td>Wright</td>
</tr>
</table>
<script type="text/javascript" charset="utf-8">
$('#edit').click(function () {
var $table = $('table');
if ($table.find('input').length) return;
$table.find('td:nth-child(2)').html(function (i, v) {
return '<input value=' + v + '>';
})
})
$('table').on('blur', 'input', function () {
$('table input').replaceWith(function () {
return this.value;
})
})
</script>
请帮助
答案 0 :(得分:2)
添加jQuery库
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
答案 1 :(得分:1)
不要忘记将jQuery添加到页面中以便能够使用其选择器以及$(document).ready()
在加载DOM时以及加载页面内容之前加载脚本。
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#edit').click(function() {
var $table = $('table');
if ($table.find('input').length) return;
$table.find('td:nth-child(2)').html(function(i, v) {
return '<input value=' + v + '>';
})
})
$('table').on('blur', 'input', function() {
$('table input').replaceWith(function() {
return this.value;
})
})
});
</script>
</head>
<body>
<label id="edit" style="cursor:pointer; color:blue;">edit</label>
<table>
<tr><td>First Name: </td>
<td>John</td>
</tr>
<tr><td>Last Name: </td>
<td>Wright</td>
</tr>
</table>
</body>
</html>
答案 2 :(得分:0)
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
修改
<table>
<tr><td>First Name: </td>
<td>John</td>
</tr>
<tr><td>Last Name: </td>
<td>Wright</td>
</tr>
$('#edit').click(function() {
var $table = $('table');
if ($table.find('input').length) return;
$table.find('td:nth-child(2)').html(function(i, v) {
return '<input value=' + v + '>';
})
})
$('table').on('blur', 'input', function() {
$('table input').replaceWith(function() {
return this.value;
})
})