दिलचस्प पोस्ट
क्या जावा के त्रिगुट / सशर्त ऑपरेटर (?) का उपयोग मूल्यों को निर्दिष्ट करने के बजाय तरीकों को कॉल करने के लिए किया जा सकता है? मैं टंकिनटर में विंडो बंद होने वाले ईवेंट को कैसे प्रबंधित कर सकता हूं? PHP $ _GET लिनक्स कमांड प्रॉम्प्ट में पास कर रहा है छवि हॉवर पर चलता है – क्रोम अस्पष्टता मुद्दा अगर … और जेएसपी या जेएसटीएल के भीतर हमें XML लेआउट का उपयोग क्यों करना चाहिए? जी ++ -fdump-class-hierarchy के उत्पादन में पहली (int (*) (…)) 0 vtable प्रविष्टि क्या है? त्रुटि ऑब्जेक्ट से वंशानुक्रम – संदेश संपत्ति कहां है? सूची दृश्य आइटम स्वाइप बाएं और स्वाइप सही है? मैं एंड्रॉइड में 'संपर्क जोड़ें' गतिविधि कैसे लांच कर सकता हूं अपाचे के साथ वेबसाइट छवि कैशिंग IComparable इंटरफ़ेस को कैसे कार्यान्वित करें? C #। नेट का उपयोग करने के लिए स्क्रीन कैप्चर कैसे करें? जावा स्विंग एप्लिकेशन में डेटाबेस और उपयोगकर्ता इंटरफ़ेस के बीच स्वत: डाटाबेस के लिए सबसे अच्छा तरीका? उल्का जेएस: बाह्य स्क्रिप्ट का उपयोग करें

ASP.NET कॉल करें PageMethod / jQuery के साथ WebMethod – पूरे पृष्ठ देता है

jQuery 1.3.2, एएसपी.नेट 2.0 पेजमैथ (वेबपैथी) को एक AJAX कॉल बनाने से सिर्फ प्रतिक्रिया की बजाय पूर्ण / पूरे पृष्ठ लौटाता है। पृष्ठ विधि पर एक ब्रेकपॉइंट से पता चलता है कि उसे कभी भी हिट नहीं हो रहा है मेरे पास मेरे विधि पर [WebMethod] विशेषता है, और यह सार्वजनिक स्थिर है, स्ट्रिंग देता है और कोई पैरामीटर नहीं स्वीकार करता है। मैंने अपने वर्ग के शीर्ष पर [ScriptService] को जोड़ने के लिए भी यह देखने की कोशिश की कि यह मदद करता है, लेकिन यह नहीं था।

मैंने इस पोस्ट को देखा है, एएसपी.नेट वेबमॉलेशन के साथ जेक्जरी एजेएक्स पूरे पृष्ठ लौट रहा है, जिसमें मेरे ही लक्षण थे, लेकिन मुझे अभी भी समस्या है। मैं http://encosia.com/2008/05/29/using-using-jquery-to-directly-call-aspnet-ajax-page-methods/ को पढ़ता हूं और मुझे लगता है कि मैं इसे टी के लिए अनुसरण कर रहा हूं, लेकिन अभी भी नहीं भाग्य।

JQuery कॉल मैं बना रहा हूं:

jQuery.ajax({ type: 'POST', contentType: 'application/json; charset=utf-8', data: '{}', dataType: 'json', url: 'MyPage.aspx/SomePageMethod', success: function(result){ alert(result); } }); 

एफएफ 3 में फायरबग के अनुसार अनुरोध / प्रतिक्रिया हेडर निम्नानुसार हैं:

 Response Headers Server ASP.NET Development Server/8.0.0.0 Date Tue, 24 Feb 2009 18:58:27 GMT X-AspNet-Version 2.0.50727 Cache-Control private Content-Type text/html; charset=utf-8 Content-Length 108558 Connection Close Request Headers Host localhost:2624 User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 Accept application/json, text/javascript, */* Accept-Language en-us,en;q=0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive 300 Connection keep-alive Content-Type application/json; charset=utf-8 X-Requested-With XMLHttpRequest Referer http://localhost:2624/MyApp/MyPage.aspx Content-Length 2 Cookie ASP.NET_SessionId=g1idhx55b5awyi55fvorj055; 

मैंने अपने पेज पर एक स्क्रिप्ट मैनेजर को जोड़ा है, यह देखने के लिए कि क्या यह मदद करता है, लेकिन कोई किस्मत नहीं है।

कोई सुझाव?

Solutions Collecting From Web of "ASP.NET कॉल करें PageMethod / jQuery के साथ WebMethod – पूरे पृष्ठ देता है"

क्या आप जानते हैं कि पृष्ठ विधि ठीक से काम कर रहे हैं? यदि आप ScriptManager का उपयोग करते हैं तो वे काम करते हैं?

ऐसा लगता है कि शायद आपको एक web.config प्रविष्टि नहीं मिल सकती है। विशेष रूप से एचटीटीपी मॉड्यूल अनुभाग।

मुझे अपने वेब से एक पंक्ति याद आ रही थी। Config:

 <system.web> <httpModules> <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> </httpModules> </system.web> 

मुझे एक और कारण के लिए आज फिर से इस समस्या का सामना करना पड़ा: मुझे "एप्लिकेशन" में गलत वर्तनी थी

 contentType: 'application/json' 

और WebMethod को कॉल करने के बजाए एक पूर्ण-पृष्ठ प्रतिक्रिया प्राप्त हो रही थी।

यदि आपने सभी को कोशिश की है और अभी भी आपके पेजमेथ से पूरे पेज को वापस ले लिया है, तो आप यह सुनिश्चित करना चाहेंगे कि आप मैत्रीपूर्ण यूआरएल का उपयोग नहीं कर रहे हैं। यदि आप उनका उपयोग कर रहे हैं, तो यह चाल आपकी सहायता कर सकती है

कॉल करने से पहले अपनी जेएस स्क्रिप्ट पर इस रेखा को जोड़ें:

 PageMethods.set_path(PageMethods.get_path() + '.aspx'); 

इसे बाहर एक साइड नोट के रूप में फेंकना मुझे अपने एचटीएमएल स्ट्रिंग में स्ट्रिंग वेरिएबल्स की लंबाई के कारण उस त्रुटि मिल रही थी और जिस वेबसाइट पर मैं अपना एजेक्स फोन करता था वह इस तरह दिखता था

 loc = (loc.substr(loc.length - 1, 1) == "/") ? loc + "Default.aspx" : loc; $.ajax({ type: "POST", url: loc + "/" + methodName, data: "{" + args + "}", contentType: "application/json; charset=utf-8", dataType: "json", success: onSuccess, error: onFail }); 

यह .aspx लिंक को सही ढंग से निकालने में सक्षम नहीं था, इसलिए मैंने स्थानीय var का उपयोग करने के बजाय मेरे वेबपृष्ठ को कड़ी मेहनत की।

मैंने देखा है कि अधिकांश अजाक्स परिदृश्य वास्तव में एक वेब सेवा या अलग स्क्रिप्ट हैंडलर को कॉल करना चाहिए, एक पृष्ठ नहीं। यह आसान 3-5 में करना आसान है, 2-0 में इतना आसान नहीं है। यहां तक ​​कि जब आप समझते हैं कि (यदि) पूरे पेज को लोड न करने पर, यहां पृष्ठ विधि कॉल करने के लिए कारण नहीं हैं:

1) पृष्ठ विधि पूर्ण पृष्ठ लोड की तुलना में कम सामान लोड कर सकती है, लेकिन अभी तक आपके द्वारा एक साधारण एजेक्स कॉल की आवश्यकता है। 2) जिम्मेदारियों के घटिया विभाजन पृष्ठ शायद अच्छी तरह से सामग्री बिछाने के लिए ज़िम्मेदार है, न कि आपके द्वारा एजेक्स विधि में उपयोग किए जाने वाले तर्क।
3) शायद आपको कुछ सत्र की आवश्यकता है, लेकिन अब भी यह उपलब्ध होना चाहिए।

मैं वर्तमान में इस विषय पर अपने ज्ञान को अद्यतन कर रहा हूं … इस धागे में इस प्रश्न का मैं एक अच्छे उत्तर की तलाश करूँगा, या मैं अगले सप्ताह अगले दिन पोस्ट करूंगा यहाँ मैं दिशा की अध्यक्षता कर रहा हूं

1) सर्वर से ग्राहक को JSON भेजें, और अपने पेज को अपडेट करने के लिए जावास्क्रिप्ट का उपयोग करें। – विभिन्न रूपरेखाएं वेब सर्वर से JSON का उत्पादन करना आसान बनाती हैं
2) जेक्टीज़ एजेक्स कॉल्स, जेसन हैंडलिंग और क्लाइंट फॉर्मेटिंग मज़ेज़, दर्दनाक के बजाय

लगभग दो घंटे बाद और आखिरकार मैंने इसे हल करने की कोशिश की। @ मारविन ज़ुम्बडा की टिप्पणी ने मेरी मदद की। मुझे अपने यूआरएल से .aspx याद आ रही थी। मुझे पता है कि यह प्रोग्रामर के रूप में मेरा सबसे अच्छा क्षण नहीं है!