2014-01-17 42 views
0

所有表單域這是我的HTMLJquery的綁定click事件使用委託

<div class="dc2-contact-cont" selectedindex="1" id="contact-form-applet"> 
<div class="dc2-ltfc"> 
    <div class="dc2-ltfcs">A 
     <br> 
    </div> 
    <div role="row" class="dc2-ltfcc" id="0"> 
     <p><span class="dc2-ltf-span" id="SIO_Contact_First_Name_Label">First Name</span> 
      <br> 
      <input type="text" aria-labelledby="SIO_Contact_First_Name_Label" id="0_SIO_Contact_First_Name" name="s_5_2_30_0" class="dc2-ltf-input" value="555" aria-readonly="false"> 
     </p> 
    </div> 
</div> 
<div class="dc2-ltfc"> 
    <div class="dc2-ltfcs">B 
     <br> 
    </div> 
    <div role="row" class="dc2-ltfcc" id="1"> 
     <p><span class="dc2-ltf-span" id="SIO_Contact_First_Name_Label">First Name</span> 
      <br> 
      <input type="text" aria-labelledby="SIO_Contact_First_Name_Label" id="1_SIO_Contact_First_Name" name="s_5_2_30_0" class="dc2-ltf-input" value="4444"> 
     </p> 
    </div> 
</div> 

我需要綁定點擊事件裏面的div的所有輸入控件,但我沒能找到合適的選擇。

我嘗試下面的表達式,但它沒有工作

$('.dc2-ltfcc p').delegate("input[type=text], textarea", 
    "click", { 
     ctx: this 
    }, 
    function(event){ 
     console.log("clicked");    
    }); 

這裏是一個的jsfiddle鏈接,我試圖用找得到正確的選擇,但我不能夠選擇甚至股利。

jsFiddle

+0

我覺得{CTS:該}委託中是怎麼了。任何人都可以爲此提供正確的答案嗎? –

+0

CTX:這是對的。它通過電流功能 – Neel

+1

的背景下顯得精緻http://jsfiddle.net/arunpjohny/KNVrc/1/ –

回答

0

使用on

$("#contact-form-applet").on("click","input",function() { 
alert('test'); 
}); 

Working Demo

使用delegate

$("#contact-form-applet").delegate("input", "click", function() { 
alert('test'); 
}); 

Working Demo

+0

爲什麼'on' ..OP問'.delegate()' –

+0

@Pilot:更新答案 –

1

你可以這樣做:

$('.dc2-ltfcc p').on('click','input',function() { 
    console.log("clicked"); 
}); 

注:delegate()1.7版本過時,你應該使用on(),而不是像上面。

+1

爲什麼不'.delegate()'?..這不答.. –

+0

@Pilot'deprecated'做沒有手段'removed' – Felix