2010-10-06 30 views
20

Tôi muốn đặt câu hỏi về số onload của Javascript.Tải lên Javascript trong HTML

Tôi đang viết trang JSP có mã <%@ include file ="body.jsp". Các bao gồm body.jsp chứa:

<table onload="function()"> 

này nên tải các chức năng javascript, nhưng nó không xuất hiện để có bất kỳ tác trên trang. Chỉ có thể sử dụng onload trên thẻ body?

Trả lời

38

onload chỉ có thể được sử dụng cho <body>, <img>, <script>, thẻ, bởi vì nó cho bạn biết khi một nguồn lực bên ngoài (hình ảnh, kịch bản, khung) hoặc toàn bộ trang (cơ thể) đã được tải

Kể từ HTML5 những cũng có thể bắn một tải sự kiện: <link>, <style>, <input type=image>, <object>
Hỗ trợ cho những vẫn có thể trở thành một hit hoặc bỏ lỡ dù (e.g. older Android browsers)

+0

và ''. – Andrey

2

"onLoad" có thể được sử dụng trên thẻ body- và frameset. Để xem một số hành động bạn có thể sử dụng:

<body onload="function(){alert('This is an action!')}"> 
3

Như những người khác đã tuyên bố sự kiện onLoad sẽ không kích hoạt trên bàn. Những gì bạn có thể làm ist gắn onLoad-handler vào phần tử body (sau đó sẽ kích hoạt, khi trang được tải) và thao tác bảng bằng ví dụ gán một id cho bảng.

<body onload="function() { var table = document.getElementById("table-id"); ... }"> 
    <table id="table-id"></table> 
</body> 

Bạn đang sử dụng một số khung javascript?

13

Tại sao không chỉ bao gồm thông qua <script tag>?

Bên trong tập tin .jsp bạn

<script> 
    window.onload = function() { 
     alert("Hello!"); 
    } 
    // or to execute some function 
    window.onload = myFunction; //notice no parenthesis 
</script> 
0

Cách đơn giản nhất tôi thấy là sử dụng một tập tin javascript và jquery bên ngoài.

// Variables and functions you want to declare 
var socket = io.connect(); 
// ..... 

// Function you want to run on load 
$(function() { 
    $('#submit').click(function() {addUser();}); 
    // ... any other functions you want to run on load 
}); 

Đây là đoạn mã từ nội dung tôi đang thực hiện. Biến được khai báo trước khi mã chạy (Nó tạo ra một ổ cắm web). Sau đó, có bộ chọn tài liệu jquery ($) chạy trên tải và gọi hàm init để sửa đổi html của tôi. Tôi sử dụng nó để gọi một hàm ẩn danh chạy ngay lập tức. Các thành phần

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