2012-04-06 7 views
6

मेरे पास एक मूल HTML पृष्ठ है जिसमें पृष्ठ पर एक क्वेरी पैरामीटर पास किया जा रहा है। मैंने सोचा कि मैं Request.QueryString के साथ मूल्य प्राप्त कर पाऊंगा लेकिन मैं जो पढ़ रहा हूं, वह ऐसा लगता है कि यह केवल एएसपी अनुप्रयोगों के लिए है। मेरे एचटीएमएल के रूप में नीचेएचटीएमएल पेज से क्वेरी स्ट्रिंग/पैरामीटर तक पहुंच

<body> 
    <object type="application/pdf" width="100%" height="100%"> 
     <!--This didn't work--> 
     <param name="src" value="<%=Request.QueryString["path"]%>" /> 
     <!--Neither did this--> 
     <!--<param name="src" value="<%=Request.Params["path"]%>" />--> 
     <!--When it is hardcoded then my page is displaying the pdf as expected.--> 
     <!--<param name="src" value="scan.pdf" />--> 
    </object> 
</body> 

मैं displayPdf.htm? पथ = scan.pdf

मैं लिखने के लिए बिना html में क्वेरी पैरामीटर पहुंचने का एक तरीका के लिए खोज कर रहा है के साथ पेज बोल रहा हूँ इस प्रकार है एक जावास्क्रिप्ट समाधान लेकिन कोई भाग्य नहीं है। मुझे यकीन है कि एक जेएस फ़ंक्शन जोड़ना बहुत बड़ा सौदा नहीं होगा, सिर्फ सोचा था कि यदि कोई एकल लाइन दृष्टिकोण था तो मैं इससे बचूंगा।

सहायता के लिए धन्यवाद।

उत्तर

8

यह शुद्ध HTML में नहीं किया जा सकता है।

यह दो तरह से किया जा सकता है, जावास्क्रिप्ट का उपयोग: (: http://jsfiddle.net/N2GUf/2/डेमो):

<body><script> 
var param = /[&?]path=([^&]+)/.exec(location.search); 
param = param ? param[1].replace(/"/g, '&quot;') : ''; 
document.write('<object type="application/pdf" width="100%" height="100%">\n' + 
    '<param name="src" value="' + param + '" />\n</object>'); 
</script></body> 

एक वैकल्पिक पद्धति पैरामीटर डोम का उपयोग कर पॉप्युलेट है

<body><object type="application/pdf" width="100%" height="100%"> 
    <param name="src" value="" id="param-path" /> 
</object> 
<script> 
var param = /[&?]path=([^&]+)/.exec(location.search); 
if (param) 
    document.getElementById('param-path').value = param[1]; 
</script>​</body> 

या तो मामले में, क्वेरी स्ट्रिंग को location.search संपत्ति से पढ़ा जाता है, और एक साधारण नियमित अभिव्यक्ति का उपयोग करके पार्स किया जाता है।

+0

दूसरी शैली लगभग मेरे लिए काम करती है लेकिन ऑब्जेक्ट मौजूद होने से पहले जावास्क्रिप्ट ब्लॉक को बुलाया जा रहा है। अगर मैं इसे बाद में कॉल कर सकता हूं तो यह समाधान निश्चित रूप से मेरे लिए काम करेगा। इसने पहले किसी भी बदलाव के बिना काम किया था। बहुत बहुत धन्यवाद। –