javascript - Get Html.ActionLink parameters from li element with query -


मेरे पास यह अनोर्ड सूची है:

  & lt; ul class = "list" & gt; & Lt; li class = "navItem" & gt; @ एचटीएमएल.एक्शनलिंक ("होम", "इंडेक्स", "होम") & lt; / li & gt; & Lt; li class = "navItem" & gt; @ html.ActionLink ("संपर्क", "संपर्क फ़ॉर्म", "संपर्क") & lt; / li & gt; & Lt; / ul & gt;  

और मेरी स्क्रिप्ट में मैं उसकी क्रिया और नियंत्रक नाम के द्वारा ली तत्व का चयन करना चाहता हूं, कि मैं विशिष्ट ली तत्व से चौड़ाई और स्थिति जैसी डेटा पुनः प्राप्त कर सकता हूं।

मेरा फ़ंक्शन इस तरह दिखता है, लेकिन मुझे नहीं पता कि चयनकर्ता को कैसा दिखना है।

  फ़ंक्शन currentItem () {// यहां मैं वर्तमान दृश्य और नियंत्रक नाम var actionName = '@ ViewContext.RouteData.Values ​​[ "कार्रवाई"] ToString ()।'; Var नियंत्रकनाम = '@ ViewContext.RouteData.Values ​​["नियंत्रक"]। ToString ()'; // कुछ ऐसा है, लिंक को एक साथ डालना? Var $ currentItem = $ ('एक [href = "' + viewController + नियंत्रक नाम + '"]'); // या वर्ग के नाम से सभी तत्वों को खोजने के लिए जैसे var myArray = $ ('। NavItem'); अगर (मायअरे [0]। नियंत्रक == नियंत्रकनाम || मेरीअरे [0]। एक्शन == एक्शनएनमे) {$ currentItem = myArray [0]; } वापसी $ currentItem; }  

मदद करने के लिए धन्यवाद।

मित्र

सबसे पहले हम मानते हैं कि हम किस HTML के साथ काम करेंगे। एक Html.ActionLink एक a टैग में बदल जाएगा, इसलिए आपका HTML कुछ ऐसा दिखाई देगा:

  & lt; li class = " NavItem "& gt; & lt; a href =" / होम / सूचकांक "& gt; होम & lt; / a & gt; & lt; / li & gt;  

इसके साथ हम li तत्वों को पुनरावृति कर सकते हैं, उनके आंतरिक a तत्व की जांच कर सकते हैं और href < / Code> विशेषता।

तो ऐसा कुछ कार्य करना चाहिए:

  फ़ंक्शन चालू आईटम () {var actionName = '@ ViewContext.RouteData.Values ​​["कार्रवाई"]। तार()'; Var नियंत्रकनाम = '@ ViewContext.RouteData.Values ​​["नियंत्रक"]। ToString ()'; Var listItems = $ ('। NavItem'); के लिए (var i = 0; i & lt; listItems.length; i ++) {var आइटम = $ (सूची [i] [i]); Var a = item.find ("ए"); यदि (a.attr ["href"]। IndexOf (नियंत्रक नाम + "/" + actionName)! = -1) {वापसी आइटम; }}}  

ध्यान दें कि यह मिलान li तत्व वापस करेगा यदि आप a तत्व से मिलान करना चाहते हैं तो इसके बजाय वापसी करें; का उपयोग करें।


Comments