मुझे जावास्क्रिप्ट खोज के लिए एक यूआरएल प्रस्तुत करने की आवश्यकता है जो मैं कर रहा हूं। दुर्भाग्यवश Url.Action
न केवल कार्रवाई बल्कि वर्तमान आईडी प्रस्तुत करता है। ऐसा तब होता है जब वर्तमान में आईडी के साथ कार्रवाई का उपयोग करने वाले पृष्ठ पर।Url.Action केवल नियंत्रक और क्रिया प्रस्तुत करता है लेकिन आईडी
Url.Action("List", "Org");
को चित्रित करने के लिए पहले Org/List
प्रस्तुत करेगा जिसमें से मैं सूचीबद्ध करने के लिए एक संगठन जोड़ सकता हूं। हालांकि, स्थान को Org/List/12345
Url.Action("List", "Org");
पर स्थानांतरित करने के बाद Org/List/12345
प्रस्तुत किया जाएगा और इसमें शामिल होने से एक समस्या उत्पन्न होती है जहां मैं Org/List/12345/6789
के साथ समाप्त होता हूं।
क्या कोई अलग तरीका है जिसका उपयोग मैं Url.Action
के अलावा कर सकता हूं? मैंने /
की संख्या और स्ट्रिंग के भाग को हटाने के लिए जावास्क्रिप्ट का उपयोग करने के बारे में सोचा है, लेकिन यह थोड़ा सा हैक लगता है।
// appears in my Site.Master & utilizes the AutoComplete plugin for jQuery
$(document).ready(function() {
$("input#FindOrg").autocomplete('<%= Url.Action("Find", "Org") %>', {
minChars: 3,
maxItemsToShow: 25
}).result(function(evt, data, formatted) {
var url = '<%= Url.Action("List", "Org") %>/';
window.location.href = url + data;
});
});
'Url.Action (" ढूँढें "," संगठन ", नया {id =" "}} 'चाल चल रही थी। बहुत स्पष्ट होना चाहिए था! – ahsteele
अच्छा। अगर मैंने यह सुनिश्चित नहीं किया था, तो मुझे यकीन नहीं था, लेकिन यह आंतरिक रूप से रूटिंग का उपयोग करता है, इसलिए मैंने सोचा कि यह मौजूदा आईडी को पकड़ने के लिए जो भी व्यवहार कर रहा था उसे ओवरराइड कर सकता है। – womp