2011-03-18 35 views
5

tôi có một bộ điều khiển với một mô hình mà tôi addAttribute ("show", "yes");spring mvc addAttribute vào mô hình, cách lấy nó từ jsp javascript

làm thế nào để lấy giá trị này trong javascript? ... giả sử tôi có JSTL

+0

hoạt động? –

+0

nope, tôi đã cố gắng trong một thời gian = (var msg = \t \t alert (msg); cho undefined – john

+0

hmm. String show = (String) session.getAttribute var msg = '<%=show%>';? –

Trả lời

5

Chèn nó trong một JavaScript sẽ được giống như hiển thị nó trong mã html của jsp.

Cố gắng làm điều này:

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

nếu bạn có thể nhìn thấy giá trị trong JSP sau đó JSTL đang làm việc. Trong bất kỳ trường hợp nào khác, có thể có một vấn đề khác. Ví dụ, cấu hình của bạn bỏ qua EL. Bạn có thể thêm thông tin này ở đầu JSP của mình:

<%@ page isELIgnored="false" %> 

Khi bạn thấy giá trị trong mã HTML thì JSTL đang hoạt động trong trường hợp đó bạn có thể sử dụng nó trong Javascript. Khi thiết lập của bạn giá trị cho biến tha "show" thành yes nó không thể được sử dụng như một giá trị boolean (vì nó phải đúng hoặc sai). Trong trường hợp này, bạn nên sử dụng nó như một chuỗi thêm các trích dẫn

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

Bạn có thể sử dụng Firebug để kiểm tra xem javascript của bạn có đang hoạt động hay không và bạn không gặp lỗi.

+0

Và nếu giá trị chứa một dấu nháy đơn? – Basic

Các vấn đề liên quan