पृष्ठभूमिjQuery 1.9.1 संपत्ति चयनकर्ता
jQuery 1.9 .attr(..)
विधि नहीं रह गया है संपत्ति मूल्यों रिटर्न के रूप में, बजाय हम अब .prop(..)
उपयोग करना होगा। दुर्भाग्य से यह भी एक गुण चयनकर्ता के माध्यम से निर्दिष्ट यानी $("input[value=]")
विशेषताओं पर लागू होता है http://jquery.com/upgrade-guide/1.9/#attr-versus-prop-
और .attr
और .prop
के बीच मतभेद पर एक अच्छा अतः चर्चा देखें:
मेरी स्थिति
मैं वर्तमान में $("input[value=]")
और $("select[value=]")
जैसे चयन तत्वों का चयन करने वाले इनपुट तत्वों का चयन करने के लिए चयनकर्ताओं का उपयोग कर रहा हूं। बहरहाल, यह नहीं रह गया jQuery 1.9 के साथ काम करता है, के बजाय मैं अब कुछ इस तरह कर रहा हूँ:
var hasValue = function() { return !!($(this).val().length); };
var hasNoValue = function() { return !($(this).val().length); };
$("input").filter(hasValue);
$("select").filter(hasValue);
मेरे वास्तविक चयनकर्ताओं, एक छोटे से बड़े होते हैं के साथ या मूल्यों के बिना तो अब मैं विभाजित करने के लिए आ रही है एक से अधिक तत्वों की जाँच .filter (..) विधि के साथ कई चयनकर्ताओं में मेरी 1 चयनकर्ता स्ट्रिंग के बीच में कॉल करता है।
प्रश्न
वहाँ $("[value=]")
, $("[value!=]")
को एक बराबर है, $("[value='abc']")
जो विशेषता के बजाय संपत्ति का उपयोग करता है? और यदि नहीं, तो .filter(hasValue)
और .filter(hasNoValue)
विधियों का उपयोग करने से एक क्लीनर तरीका है?
धन्यवाद
सुंदर मेरे लिए साफ लग रहा है और आपका वर्तमान समाधान इस बात पर ध्यान देता है कि उपयोगकर्ता इनपुट रहा है या नहीं) – ahren
क्या यह '[value =]' के बजाय '[value]' नहीं होना चाहिए? या दोनों काम करते हैं? –
मेरे लिए बस ठीक काम करता है -> [** फ़ील्ड **] (http://jsfiddle.net/ssPku/), और यह '[value =" "]' होना चाहिए क्योंकि केवल '[value]' किसी का चयन करेगा एक मूल्य विशेषता के साथ तत्व। – adeneo