2011-05-23 11 views
22
@(Html.ActionLink("Link Label", 
    "ActionMethodName", 
    "ControllerName", 
    null, // parameter object, then html object 
    null)) 

एएसपी.नेट एमवीसी 3 रेजर: जावास्क्रिप्ट स्ट्रिंग चर में एक्शन यूआरएल कैसे प्राप्त करें?

<a href="/ControllerName/ActionMethodName/">Link Label</a> 

अगर मैं Edit या New लिंक के लिए एक JavaScript टेम्प्लेट में /ControllerName/ActionMethodName/id संदर्भ लेना चाहते हैं पैदा करता है, मैं JavaScript वैरिएबल के लिए कैसे आवंटित होता है कि?

प्रयास:

<script type="text/javascript"> 
    var actionUrl = '@(Html.ActionLink("","ActionMethodName", 
             "ControllerName",null,null))'; 
</script> 

लेकिन उस बिंदु पर, मैं जावास्क्रिप्ट का उपयोग करने के स्ट्रिंग में अवांछित <a href... पात्रों को दूर करने के लिए होगा।

उत्तर

40

@Url.Action("ActionMethodName", "ControllerName") पथ उत्पन्न करेगा।

+2

क्या होगा यदि कोई पैरामीटर/डेटा ऑब्जेक्ट है? – usefulBee

10
<script type="text/javascript"> 
    var actionUrl = @Html.Raw(Json.Encode(Url.Action("ActionMethodName", "ControllerName"))); 
</script> 

या यदि आप पहले से ही पृष्ठ के अंदर कहीं न कहीं इस actionLink है आप इसे सीधे इस्तेमाल कर सकते हैं:

var actionUrl = $('#mylink').attr('href'); 

बस क्रम में एक विशिष्ट आईडी प्रदान करने के लिए सुनिश्चित चयन आसान बनाने के लिए:

@(Html.ActionLink(
    "Link Label", 
    "ActionMethodName", 
    "ControllerName", 
    null, 
    new { id = "mylink" }) 
) 
संबंधित मुद्दे