我有幾個div,我點擊時顯示一個文本框。 TextBox是從另一個div複製的。它工作正常,但是當我把焦點放在TextBox上時,它就消失了。我究竟做錯了什麼?jquery - 文本框隱藏其重點
HTML
<table>
<tr>
<td>
<div class="panel_call">
Call 1
<div class="panel_authenticate_container" style="display: none">
</div>
</div>
</td>
</tr>
<tr>
<td>
<div class="panel_call">
Call 2
<div class="panel_authenticate_container" style="display: none">
</div>
</div>
</td>
</tr>
</table>
<div class="panel_authenticate" style="display: none;">
Email:
<input id="Text1" type="text" />
</div>
JQUERY
$(".panel_call").click(function(e) {
if ($(e.target).closest("tr").find(".panel_authenticate_container").is(":visible")) {
var c = $(e.target).closest("tr").find(".panel_authenticate_container").html();
$(".panel_authenticate").html(c);
$(e.target).closest("tr").find(".panel_authenticate_container").html("");
$(e.target).closest("tr").find(".panel_authenticate_container").hide();
}
else {
if ($(".panel_authenticate_container:visible").length > 0) {
var b = $(".panel_authenticate_container:visible").html();
$(".panel_authenticate").html(b);
$(".panel_authenticate_container:visible").html("");
$(".panel_authenticate_container:visible").hide();
}
var a = $(".panel_authenticate").html();
$(e.target).closest("tr").find(".panel_authenticate_container").html(a);
$(e.target).closest("tr").find(".panel_authenticate_container").show();
$(".panel_authenticate").html("");
$(".panel_authenticate").hide();
}
});
這是工作正常,但不是'if($(e.target).is(「:input」))''我可以讓它如果'($(e .TARGET)。是( 「panel_authenticate_container」))'? – enb081 2013-03-08 10:00:52
我怎樣才能使它爲panel_authenticate_container和它裏面的所有元素? – enb081 2013-03-08 10:05:39
太棒了!謝謝!如果你願意,你可以更新答案,這樣對其他人來說更一般和有用,因爲這正是我所期待的 – enb081 2013-03-08 10:14:41