2011-03-18 13 views
5

से इसे कैसे प्राप्त करें मेरे पास एक मॉडल के साथ एक नियंत्रक है जो मैं जोड़ता हूं ("शो", "हाँ");मॉडल में वसंत एमवीसी addAttribute, जेएसपी जावास्क्रिप्ट

मैं जावास्क्रिप्ट के अंदर यह मान कैसे पुनः प्राप्त करते हैं? ... यह सोचते हैं मैं JSTL

+0

काम करता है? –

+0

नहीं, मैंने कोशिश की है कि एक समय = (वर संदेश के लिए =। \t \t चेतावनी (एमएसजी); अपरिभाषित देता – john

+0

हम्म स्ट्रिंग शो = (स्ट्रिंग) session.getAttribute ("शो"); var msg = '<%=show%>'; –

उत्तर

5

एक जावास्क्रिप्ट में यह सम्मिलित करना jsp के HTML कोड में यह दिखा के रूप में ही हो जाएगा।

यह करने के लिए प्रयास करें:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
... 
Show value is <c:out value="${show}"/> 

आप JSP में मूल्य तो JSTL काम कर रहा है देख सकते हैं। किसी भी अन्य मामले में एक और समस्या हो सकती है। उदाहरण के लिए कि आपकी कॉन्फ़िगरेशन ईएल को अनदेखा करती है। आप अपने JSP के शीर्ष पर इस जोड़ सकते हैं:

<%@ page isELIgnored="false" %> 

जब आप एचटीएमएल कोड में इसका महत्व समझते हैं तो JSTL उस मामले आप जावास्क्रिप्ट में उपयोग कर सकते हैं में काम कर रहा है। चूंकि आपकी सेटिंग थै वैरिएबल "शो" के लिए मान को हां तक ​​उपयोग नहीं किया जा सकता है, इसे बूलियन मान के रूप में उपयोग नहीं किया जा सकता है (क्योंकि यह सत्य या गलत होना चाहिए)। इस मामले में आप एक स्ट्रिंग के रूप में उपयोग करना चाहिए जोड़ने कोटेशन

<script type="text/javascript"> 
    var showVar = '<c:out value="${show}"/>'; 
    alert("The variable show is "+showVar); 
</script> 

आपको यह देखना होगा कि आपके जावास्क्रिप्ट काम कर रहा है Firebug का उपयोग कर सकते हैं और आप इस पर कोई त्रुटि नहीं है।

+0

और यदि मूल्य में एक एस्ट्रोफ़े है? – Basic

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