我在單個頁面上創建了一個遊戲,並且我有10個點擊函數在多個包含表單的div上觸發。在divs裏面是玩家必須填寫的問題。我已經能夠用這行代碼來針對每一個單獨的表格:var answer1 = $('form[name="form1"] >input:text').val()
,這樣每個表格.. [name="form2"]..
等都會發生變化。我之前在另一篇帖子中詢問過here。所以HTML如下:凝聚多個點擊並使用此功能提交
<div class = "clickbox clickbox1"></div>
<div class = "riddlebox riddlebox1">
//question
<form name="form1">
<input type="text" value=""/>
</form>
</div>
<div class = "clickbox clickbox2"></div>
<div class = "riddlebox riddlebox2">
//question
<form name="form2">
<input type="text" value=""/>
</form>
</div>
和jQuery來對付它:
$(".clickbox1").click(function() {
var answered = false;
$(".riddlebox1").show();
$('form[name="form1"]').submit(function() {
var answer1 = $('form[name="form1"] >input:text').val().toLowerCase();
if (answer1 == //do some checks &&(!answered)){
answered=true;
points++;
$('form[name="form1"] >input:text').val("");
}
return false;
});
});
我有這些功能的10。我試圖將所有這些都集中到一個函數中。每次單擊div時,是否需要創建this
的實例,以便我可以識別該實例的新屬性?例如回答= false並分配輸入文本值。
很有幫助事實上,由於 – chucky
你爲什麼要使用兒童();而不是find(); ? – chucky
如果你知道你正在查找的元素是當前元素的直接子元素,那麼'children()'只能看到直接子元素,而不像find()',它會查看所有子元素。它可以提供更好的性能 - 在這種情況下,它不會產生任何可衡量的差異。 – tcovo