【发布时间】:2014-04-28 06:44:45
【问题描述】:
这段代码的重点是在 div 内的两个版本的 innerHTML 之间来回切换,使用输入值(或默认值)并切换按钮的显示方式。它不工作。第一次点击后,“新建”按钮失效。该 div 应该恢复到具有空白输入字段的原始显示。
我已经查看了有关 .toggle 方法的其他一些问题,但它已被弃用,目前还不清楚最好的解决方法是什么。在方法上似乎没有太多共识。以下是我找到的其他线程供参考:
- JQuery Button Click Not Working
- Toggling Click Handlers in Javascript
- Toggle Between Two Different Click Events
Here is a jsfiddle example 我正在尝试做的事情。
HTML 代码:
<div id="case-name">Case Name: In the Matter of <input id="input-petitioner" type="text" placeholder="Petitioner" maxlength="50"></input> and <input id="input-respondent" type="text" placeholder="Respondent" maxlength="50"> <button id="case-name-submit" type="button" value="none">Submit</button></div>
脚本:
$(document).ready(function(){
//EVENT TRIGGERS AND ACTIONS
$('#case-name-submit').on('click', function(){
$('#case-name').fadeOut('fast').html(
'Case Name: In the Matter of ' + $('#input-petitioner').val() + ' and ' + $('#input-respondent').val() + ' <button id="case-name-change" type="button" value="none">Change</button>'
).fadeIn('fast');
});
$('#case-name-change').on('click', function(){
$('#case-name').fadeOut('fast').html(
'Case Name: In the Matter of <input id="input-petitioner" type="text" placeholder="Petitioner" maxlength="50"></input> and <input id="input-respondent" type="text" placeholder="Respondent" maxlength="50"> <button id="case-name-submit" type="button" value="none">Submit</button>'
).fadeIn('fast');
});
});
【问题讨论】:
-
你需要看看[事件委托](learn.jquery.com/events/event-delegation/)
-
非常酷的参考。我一定会去看看的。
标签: javascript jquery html