2012-02-12 13 views
20

मैं आईडी नाम दिए बिना jQuery में ठीक तरह से नामित इनपुट का चयन कैसे कर सकता हूं?जावास्क्रिप्ट नाम सरणी इनपुट चयनकर्ता (नाम [कुछ समय]]

<input name="person[first]" type="hidden"> 
<input name="person[last]" type="hidden"> 

// Seems to be acting on multiple hidden elements instead of this named one 
// This sets the value of both of those hidden elements in some cases 
$("input[type=hidden][name=person[first]]").val('Test'); 

// So I've changed it to this. Is there a better way? 
$("input[name=person[first]]").val('Test'); 
+0

क्या आप एचटीएमएल के साथ कई छिपे इनपुट तत्वों को शामिल करते समय क्या काम नहीं कर रहे हैं इसका एक उदाहरण दे सकते हैं? यह आपके उदाहरण से स्पष्ट नहीं है। – Anurag

उत्तर

28

उद्धरण में विशेषता मान रखो ...

$("input[type=hidden][name='person[first]']").val(); 
    // ---------------------^-------------^ 

the docs for attribute-equals-selector से ...

विशेषता विशेषता नाम।

मूल्य एक विशेषता मूल्य। या तो एक निर्विवाद एकल शब्द या उद्धृत स्ट्रिंग हो सकता है।

चूंकि आपके पास केवल एक शब्द से अधिक है, इसलिए इसे उद्धृत किया जाना चाहिए।

3

मुझे पूरा यकीन है कि आपको किसी भी विशेषता चयनकर्ता के मूल्य उद्धरण में रखा जाना चाहिए जिसमें सीएसएस में अर्थ के साथ प्रतीक शामिल हैं। इस तरह:

input[type=hidden][name='person[first]'] 
संबंधित मुद्दे