Friday 15 August 2014

razor - How to find whether the type of the element in the list is TextBox or CheckBox in Jquery? -


मेरा कोड ऐसा है:

  & lt; div class = "features" & gt; & Lt; ul class = "featuresTest" & gt; & Lt; li id ​​= 'chklist1' & gt; & lt; इनपुट आईडी = 'चेकबॉक्स 1' प्रकार = 'चेकबॉक्स' चेक किया गया & & gt; & lt; / li & gt; & Lt; li id ​​= 'chklist2' & gt; & lt; इनपुट आईडी = 'सुविधाओं 2' प्रकार = 'टेक्स्ट बॉक्स' / & gt; & lt; / li & gt; & Lt; li id ​​= 'chklist3' & gt; & lt; इनपुट आईडी = 'चेकबॉक्स 1' प्रकार = 'चेकबॉक्स' चेक / & gt; & lt; / li & gt; & Lt; / ul & gt; & Lt; / div & gt;   

मेरे कोड में, ये चेकबॉक्स और टेक्स्ट बॉक्स डायरेमिक रूप से जेक्जरी का उपयोग करके उत्पन्न होते हैं।

अब मैं $। प्रत्येक () का उपयोग कर रहा हूं

इस खोज को उल टैग के अंदर ली टैग के आईडी के आधार पर करना होगा।

  $ ("# textbutton") क्लिक करें (फ़ंक्शन () {$ .getJSON ('@ Url.Action ("GetFeaturePkId")', फ़ंक्शन (फीचरपकिड) {var featurespkid = featurepkid; $ .each ( Featurepkid, function (k, v) {if ($ ("। फीचर्सटीस्ट" gt; li.chklist "+ v +" ") .has ('input [type =" textbox "]')) {चेतावनी (" टेक्स्टबॉक्स ") ;} और {चेतावनी ("चेकबॉक्स");}});});});   

उपरोक्त कोड पर फीचरपकिड 1 से 20 देता है।

मैंने इसे करने की कोशिश की, लेकिन असफल।

कृपया कृपया उस मुद्दे पर मुझे सलाह दें ।

जैसा कि आप अपने प्रश्न को संपादित करते हैं I में समस्या आपको जावास्क्रिप्ट कोड में मिलती है।

आप में अगर आपके पास $ ("। FeaturesTest" gt; li.chklist "+ v +" ") .has ('input [type =" textbox "]') .. और तत्वों की वह वापस सरणी ... अगर jQuery चयनकर्ता किसी भी खोज नहीं करता है, तो वह खाली सरणी - [] वापस आती है।

तो कथन सही / झूठी तुलना करती है .. लेकिन जब वह खाली सरणी प्राप्त करता है - [] वह इसे [] के रूप में बदलता है। ToString () और यह खाली स्ट्रिंग लौटाता है ... और वह true < / Code>।

तो प्रश्न का उत्तर देने के लिए आप

  को बदल सकते हैं ($ ("। फीसटेस्ट" gt; li.chklist "+ v +" ") .has ( '($ ("। फीसटेस्ट & gt; li # chklist" + v) इनपुट <प्रकार = "टेक्स्ट बॉक्स"]))   

से

  .has ('input [type = "textbox"]')। लंबाई)   

.leng वें सरणी में तत्वों की गिनती वापस लौटाएगा ... इसलिए जब jQuery चयनकर्ता कुछ भी नहीं खोजते, तो खाली सरणी के कारण 0 और thats false के बजाय true लौटाते हैं।

No comments:

Post a Comment