2011-10-17 18 views
7

मेरे पास एक नियंत्रक और एक क्रिया है। यह क्रिया डेटा को डेटाबेस में सहेजना है। और अब, मैं चाहता हूं कि जब मैं एक बटन सबमिट करता हूं, तो मेरा नियंत्रक एक क्रिया करता है और नई विंडो खोलता है।एएसपी.नेट एमवीसी 3 कंट्रोलर एक्शन और ओपन नई विंडो

public ActionResult New(FormCollection collection) 
    { 

     data.Population_Code = collection["Countrys[0].CountryCode"]; 
     data.Population_Desc = collection["Countrys[0].CountryDesc"]; 
     data.Population_Grouping = collection["Countrys[0].CountryGroup"]; 
     data.Population_Type = "CNTRY"; 
     data.Population_Redudant = "N"; 
     data.Population_Modified_At = officeCode.User_Office.ToString(); 
     db.SaveChanges(); 

     //example for new window 
     //window.open('/Report/New.aspx') 

     return RedirectToAction("index"); 
    } 

इसलिए मेरा नियंत्रक एक क्रिया करता है और एक नई विंडो खोलता है।

कोई भी मेरी मदद कर सकता है?

धन्यवाद

उत्तर

16

तकनीकी तौर पर, यह जावास्क्रिप्ट कि नई विंडो खुलेगी लौटने के द्वारा किया जा सकता है।

हालांकि, अधिकांश ब्राउज़र इस तरीके से नामित एक नई विंडो को मार देंगे (यानी पॉपअप अवरोधक)।

शुरुआत से नई विंडो में अपनी कार्रवाई के लिंक को खोलकर, यदि संभव हो तो आप बेहतर हो जाएंगे;

@Html.ActionLink("New report", "New", "Report", null, new {target = "_blank"}) 

संपादित

मैं अपनी कार्रवाई से देख सकते हैं, कि यह शायद एक रूप है कि रिपोर्ट बनाता है, आप एक फॉर्म पर target='_blank' विशेषता का भी उपयोग कर सकते हैं।

+0

धन्यवाद मैट, हाँ यह रिपोर्ट दिखाने के लिए है। वास्तव में, मेरे पास मेनू रिपोर्ट है। लेकिन अब मेरे मालिक मुझे कुछ ऐसा करने के लिए कहते हैं, जब भी नियंत्रक नई कार्रवाई करता है तो यह एक नई विंडो में रिपोर्ट दिखाएगा। और अब, मैं उलझन में आया कि मैंने जो मूल्य जोड़ा है उसे कैसे प्राप्त करें। –

+0

संपादित करें हां, आप अपना मेनू लिंक बनाने के लिए एक्शनलिंक नमूना का उपयोग कर सकते हैं। यह कार्रवाई को कॉल करने से पहले नई विंडो * खोलता है, जो डेटा को सहेज सकता है और रिपोर्ट दृश्य खोल सकता है। –

+0

धन्यवाद मैंने अपनी समस्या पूरी की है। मैं बैच आईडी स्टोर करने के लिए कुकीज़ का उपयोग करें। –

संबंधित मुद्दे