2010-07-30 14 views
6

में सर्वर साइड पेज से क्लाइंट साइड फ़ंक्शन से कोई मान कैसे पास करें मेरे एप्लिकेशन में मुझे सर्वर पक्ष (.aspx.cs) से एक स्ट्रिंग मान को क्लाइंट साइड (.aspx) में एक फ़ंक्शन में पास करने की आवश्यकता है।) पृष्ठ।एएसपीनेट

यदि कोई हो तो विचार और नमूना कोड प्रदान करके कोई मेरी मदद कर सकता है?

उत्तर

1

आप या तो सर्वर साइड पर स्क्रिप्ट उत्पन्न कर सकते हैं और उस में मूल्य एम्बेड:

StringBuilder sb = new StringBuilder(); 
sb.Append("<script type=\"text/javascript\""); 
sb.Append("var someFunc = function(){"); 
sb.AppendFormat("alert('{0}');", importantServerSideValue); 
sb.Append("};"); 
sb.Append("</script>"); 

Page.ClientScript.RegisterClientScriptBlock("genScript", sb.ToString()); 

या पृष्ठ पर एक गुप्त फ़ॉर्म एलीमेंट में महत्व और क्लाइंट साइड जावास्क्रिप्ट से उस तक पहुंच।

<!-- In the Markup --> 
<asp:HtmlInputHidden id="hiddenField" runat="server" /> 

// And in the code-behind 
hiddenField.Value = importantServerSideValue; 
+0

स्ट्रिंगबिल्डर पृष्ठ में इंजेक्ट करने के लिए स्क्रिप्ट बनाने के लिए, aaargh, मेरी आंखें! ;-) छुपा इनपुट फ़ील्ड हालांकि बेहतर है :) – Rob

+0

@ रोब - हेहे। मैं आम तौर पर कोड में स्क्रिप्ट बनाने के लिए डिफ़ॉल्ट हूं जब तक कि ओपी राज्यों को स्क्रिप्ट को पंजीकृत करने के किसी भी विशेष तरीकों का उपयोग करने की आवश्यकता नहीं है (जैसे इसे स्टार्टअप स्क्रिप्ट आदि के रूप में पंजीकृत करना)। –

9

क्या आपका मतलब है कि आप एक जावास्क्रिप्ट समारोह के लिए मूल्य पारित करने के लिए की जरूरत है, आप क्या कर सकते कुछ इस तरह है ...

.aspx फ़ाइल में:

<script language="javascript" type="text/javascript"> 
    var stringValue = '<%=GetStringValue();%>'; 

    // For example: 

    alert(stringValue); 
</sctipt> 

.aspx.cs फ़ाइल में:

private string GetStringValue() 
{ 
    return "A string value"; 
} 

यह तो एक जावास्क्रिप्ट messagebox कह "एक स्ट्रिंग मान दिखाई देंगे "जब पृष्ठ

0

जब मुझे PHP से JS तक एक वैरिएबल मान पास करना पड़ा, तो मैंने php चर के मान पर एक चर सेट के साथ जेएस को गूंजने के लिए php का उपयोग किया। जैसे

//php code 
echo 'var number = ' . $variable . ';';