jQuery:handle点击提交按钮

时间:2014-07-23 12:36:52

标签: jquery input submit

我尝试点击提交按钮,但它似乎无法正常工作,好像我的选择器错了,但我真的不能告诉我的错误。

基本上它只是以下内容:

$(".edit input").click(function() {
    $(".note").html($(this).val());
    $(".edit").html(editHTML);
});

这是我对jsfiddle的测试: http://jsfiddle.net/D7Teb/

1 个答案:

答案 0 :(得分:0)

您需要delegate事件,因为您在运行初始侦听器代码后添加了一些内容。以下适用于jQuery 1.7+,因为它使用on方法。如果必须使用早期版本,请查看delegate()方法。

http://learn.jquery.com/events/event-delegation/ http://api.jquery.com/on/ http://api.jquery.com/delegate/

演示:http://jsfiddle.net/robschmuecker/D7Teb/1/

var noteHTML = $(".note").html();
var editHTML = $(".edit").html();
var noteAltHTML = '<input class="myInput" type="text" />';
var editAltHTML = '<button>Save</button>';

$(document).on('click', ".edit a", function () {
    $(".note").html(noteAltHTML);
    $(".edit").html(editAltHTML);
});

// Since you are adding the HTML after the initial running and adding of the listeners, you have to 'delegate' the event like this with 
$(document).on('click', ".edit button", function () {
    $(".note").html($(".myInput").val());
    $(".edit").html(editHTML);
});