一开始我使用警报,但觉得它不是那么好..它给用户增加了额外的步骤并且很烦人..
如果字段为空,我想这样做,然后恢复以前的值。
<ul id="task-group">
<li class="active"><a href="#">Personal</a></li>
<li class="active"><a href="#">Work</a></li>
</ul>
<input type="text" name="task-group" style="display:none">
jQuery:
$(document).ready(function () {
var addInput = $('input[name="task-group"]').hide();
var beforeItems = $('li.active');
beforeItems.on('dblclick', itemClick);
function inputKeydown(e) {
var $this = $(e.target).closest('input[type="text"]');
if (e.keyCode == 13) {
$this.blur();
}
}
function itemClick(e) {
var $this = $(e.target).closest('li.active');
var txt = $this.find('a').text();
var input = $("<input type='text'/>").val(txt);
$this.html('');
input.appendTo($this).focus();
input.on('blur', editInputBlur);
input.keydown(inputKeydown);
}
function editInputBlur(e) {
var $this = $(e.target).closest('input[type="text"]');
var v = $this.val();
if (v.trim() == "") {
} else {
var $a = $("<a href='#'>" + v + "</a>");
$this.parent().append($a);
$this.remove();
}
}
});
但我总是用 val() 方法得到空的 html 字段,帮助..(第 34 行)