Вместо комбинирования обоих обработчиков я использовал jQuerys live
обработчик событий для второго клика.
$("input#page_url_button.edit_url_button").live('click', function () {
alert("2");
$(this).val("Save");
$("input#page_url").removeAttr("disabled");
$(this).removeClass("edit_url_button");
$(this).addClass("save_url_button");
});
См. Пример на http://jsfiddle.net/dJPvJ/
Редактировать:
Я был на полпути с моим первоначальным ответом, этот исправленный код должен делать то, что вам нужно:
// If URL has info in it, then change value of button and add class to button
$("input#page_url_button.save_url_button").live('click', function () {
if( $("input#page_url").val().length > 0 ) {
$(this).val("Edit URL");
$(this).addClass("edit_url_button");
}
}); // This part is getting skipped, I need to find a way to include this in the process
// If this button has class (edit_button_url) change value, add new class and remove the Dsiabled attr from URL field
$("input#page_url_button.edit_url_button").live('click', function () {
$(this).val("Save");
$("input#page_url").removeAttr("disabled");
$(this).removeClass("edit_url_button");
$(this).addClass("save_url_button");
});
Чтобы это сработало, вам также необходимодобавить "save_url_button" к исходной разметке:
<input id="page_url_button" type="button" value="Submit" class="save_url_button fright" style="width:60px">