2011-07-07 48 views

Trả lời

8

Nếu bạn nghĩ rằng tập lệnh java được viết bên trong JSP thì có thể.

Nhưng bạn đang cung cấp tệp JS riêng biệt thì bạn có thể tạo biến toàn cầu và biến đó sẽ có sẵn ở mọi nơi.

4

Bạn sẽ không thể ghi vào tệp js bên ngoài. Tuy nhiên nếu bạn đặt var s = "<%=str%>"; trong jsp của bạn sẽ trở thành một biến toàn cầu có thể được sử dụng trong tệp js bên ngoài của bạn bởi vì s sẽ có phạm vi toàn cục. Tóm lại, bạn không thể sửa đổi tệp js thực tế, nhưng bạn có thể thêm một biến với phạm vi toàn cục và tham chiếu biến đó trong tập lệnh js bên ngoài của bạn.

1

Bạn chỉ có thể tạo mã jsp chứa jsp có "công cụ động" được in bên trong và sau đó nhập jsp đó làm tệp js bình thường. Tôi sẽ cho bạn thấy triển khai của riêng tôi, cho trang web mà tôi đang làm việc (nó sử dụng các thanh chống). Tôi đang sử dụng phương pháp này để xuất khẩu sang các mặt hàng một bản đồ có chứa một số chuỗi cục bộ:

foo.jsp:

<%@ page contentType="text/javascript" pageEncoding="UTF-8" %> 
<%@ taglib uri="/struts-tags" prefix="s" %> 

var myString = '<s:text name="foo.MY_STRING" />' 

struts.xml:

<action name="foo"><result>foo.jsp</result></action> 

home.jsp:

<script type="text/javascript" src="foo.action" charset="UTF-8"></script> 
1

Xác định chuỗi trước khi bạn đưa tệp JavaScript vào tệp JSP của mình.

<script type="text/javascript"> 
    var str = "Hello"; 
</script> 
<script src="js/myJavascript.js"></script> 

Trong tệp JavaScript, bạn có thể tham khảo trực tiếp biến.

ví dụ:

alert(str) 
Các vấn đề liên quan