मैं एक टैग 'href या प्रपत्र' एक्शन से यूआरएल को खींचने के लिए पसंद करते हैं:
यह मैं कैसे .js फ़ाइलों कहते हैं।
<img class="_click" src="<%= Url.Content("~/my/image.png") %>" alt="Click" />
और मेरी जावास्क्रिप्ट में (jQuery पर दोहरी जांच इस, मुझे यकीन है कि अगर यह सटीक सिंटैक्स है नहीं कर रहा हूँ।):
var url = $('._click').attr('href');
// To pass these to your plugin as options
// see lightbox source for a full list
$('a').lightBox({ imageLoading : url })
एक और थोड़ा कम पसंद के विकल्प के शीर्ष पर अपनी सेटिंग्स को जोड़ने के लिए है आपकी फ़ाइल:
<script type="text/javascript"><![CDATA[
$('a').lightBox({ imageLoading : <%= Url.Content("~/my/image.png") %> })
//]]></script>
मैंने कहा 'कम पसंद' क्योंकि यह दृष्टिकोण मार्कअप और कोड को मिश्रित करता है।
फिर भी एक और दृष्टिकोण आप की सेवा के लिए js एक नियंत्रक से फ़ाइल है (जिनमें से साफ ऊपर एक बहुत जरूरत है): (
public ActionResult GetFileContent(string filename)
{
// important: make sure to control the path for security
var path = Server.MapPath("~/Scripts/" + filename);
var content = System.IO.File.ReadAllText(path);
// Use some kind of template convention
content = content.Replace("{{IMAGE_PATH}}", Url.Content(@"~/my/image.png"));
var bytes = new UTF8Encoding().GetBytes(content);
return new FileContentResult(bytes, "text/javascript");
}
टीएनएक्स! यह मेरी समस्या हल हो गई। –