ठीक है, मैं निम्नलिखित कार्यों के साथ एक जावास्क्रिप्ट फ़ाइल है:जावास्क्रिप्ट अजाक्स में सापेक्ष पथ समस्याएं फोन
function AskReason() {
var answer = prompt("Please enter a reason for this action:", "");
if (answer != null)
DoReason(answer);
}
function createXMLHttpRequest() {
try {
return new XMLHttpRequest();
}
catch (e)
{ alert('XMLHttpRequest not working'); }
try {
return new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{ alert('Msxml2.XMLHTT not working'); }
try {
return new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{ alert('Microsoft.XMLHTTP not working'); }
alert("XMLHttpRequest not supported");
return null;
}
function DoReason(reason) {
var xmlHttpReq = createXMLHttpRequest();
var url = "/Shared/AskReason.ashx?REASON=" + reason;
xmlHttpReq.open("GET", url, true);
xmlHttpReq.send(null);
}
यह पंक्ति:
var url = "/Shared/AskReason.ashx?REASON=" + reason;
क्या समस्या का कारण है है।
वीएस 2010 में ऐप डिबगिंग - यह कॉल मेरे एशक्स हैंडलर पर काम करता है।
जब मैं एक वर्चुअल निर्देशिका के लिए परियोजना को स्थानांतरित - उदाहरण के http://localhost/myapp
इस कोड को तोड़ देगा और मैं इस के लिए जावास्क्रिप्ट बदलना होगा:
var url = "http://localhost/myapp/Shared/AskReason.ashx?REASON=" + reason;
मैं कैसे ठीक कर सकते हैं पर कोई भी विचार जब मैं सर्वर पर ऐप्स को तैनात करता हूं तो यह दोनों वातावरण में काम करने के लिए या मैन्युअल परिवर्तन को स्वीकार करता है?
धन्यवाद, माइक
नहीं ठीक है, मैं एक मिनट में गौर करेंगे - लेकिन यह एक बहुत बुरा विचार [दूसरों के बीच में सुरक्षा कारणों के लिए] अपने स्वयं के AJAX विधि रोल करने के लिए है - कृपया प्रोटोटाइप या jQuery की तरह एक पुस्तकालय को देखो। या फिर जब से तुम नेट का उपयोग कर रहे - पुस्तकालयों में बनाया का उपयोग (जो प्रभावी रूप से jQuery) – iivel