दिलचस्प पोस्ट
जावास्क्रिप्ट में ब्राउज़र का "ज़ूम" इवेंट पकड़ो JavaFX 2.1 तालिका दृश्य ताज़ा आइटम रेल में सक्रिय रिकॉर्ड के लिए डिफ़ॉल्ट समयक्षेत्र कैसे बदल सकता है? GZIP पर संपीड़न ब्राउज़र संगतता और फायदे कम करें जावा ने आंतरिक वर्गों में स्थैतिक क्षेत्रों पर प्रतिबंध लगाया है? जावा सुरक्षा प्रबंधक को अक्षम कैसे करें? ASP.NET MVC आवेदन को स्थानांतरित करने के लिए कैसे? MySQL स्थानिक डेटा का उपयोग करते हुए Google Maps पर निकटतम स्थान प्राप्त करें फंक्शन टेम्पलेट में जादू तर्क क्या पीएनजी में एक्सपी डाटा जैसे JPG होते हैं? Azure वेबसाइट पर विभिन्न स्थानों पर एकाधिक परियोजनाएं प्रकाशित करें सर्वर पर जर्सी लॉग कैसे प्राप्त करें? $ (यह) AJAX सफलता के अंदर काम नहीं कर रहा है एसक्यूएल में क्लास 1000 आइटम सीमा समर्पित एप्लिकेशन फ़ोल्डर के लिए जगह ढूंढें

बाहरी जेएस फाइल में एस्पनेट एमवीसी यूआरएल। एक्शन।

बाहरी जेएस फ़ाइल में, मैं उपयोग नहीं कर सकता

url = "@Url.Action("Action", "Controller")" //url output : @Url.Action("Action", "Controller") //I get IllegalPath Name error. 

जब मैं यह लिखता हूं:

 url = "/Controller/Action" 

और अगर परियोजना एक उप फ़ोल्डर के अंतर्गत है, तो स्क्रिप्ट काम नहीं करते। सापेक्ष यूआरएल के रूप में मुझे ऐसा कुछ चाहिए:

 url = "~/Controller/Action" 

मैं यह कैसे कर सकता हूँ? धन्यवाद।

वेब के समाधान से एकत्रित समाधान "बाहरी जेएस फाइल में एस्पनेट एमवीसी यूआरएल। एक्शन।"

.js फ़ाइलों को asp.net mvc दृश्य इंजन द्वारा पार्स नहीं किया जाता है, आप बस वहां किसी भी सी # कोड का उपयोग नहीं कर सकते। मैं विवादास्पद दृष्टिकोण का सुझाव देता हूं, ऐसा कुछ

 <div id="loader" data-request-url="@Url.Action("Action", "Controller")"></div> 

और जावास्क्रिप्ट में, data-request-url मूल्य का उपयोग करें

 $(function(){ $('#loader').click(function(){ var url = $(this).data('request-url'); alert(url); }); }); 

मुझे यकीन नहीं है कि यह सबसे खूबसूरत समाधान है, लेकिन मैंने जो किया वह रजिस्टरों और बाहरी लिपियों में वास्तविक कार्यान्वयन के बीच अंतर कर रहा था, ताकि:

 <script>...</script> ... include all the external scripts I need $(document).ready(function(){ //get all the information you need from your MVC context //before going out of context and into the scripts var url = '@Url.Action("Action", "Controller")'; RegisterMyFunction(url, other parameters ..); RegisterAnotherFunction(url, others...); } 

ताकि मेरे विचारों में मेरे पास रजिस्टर फ़ंक्शंस था और लिपियों में मुझे कुछ भी करने के लिए पैरामीटर के रूप में विशेष मान शामिल थे जो भी मैं चाहता था

आशा करता हूँ की ये काम करेगा,