2012-03-22 35 views
7

Tôi đang cố gắng đặt văn bản làm liên kết để khi tôi nhấp vào đó, nó sẽ chạy một hàm. Ngay bây giờ tôi chỉ có nó được thiết lập để google.com để cố gắng để có được văn bản xuất hiện như một liên kết, nhưng nó không có vẻ là làm bất cứ điều gì cả. Nó chỉ là văn bản tĩnh. Bất kỳ đề xuất?Tự động tạo liên kết Javascript

 var leftDiv = document.createElement("div"); //Create left div 
     leftDiv.id = "left"; //Assign div id 
     leftDiv.setAttribute("style", "float:left; width:66.5%; line-height: 26px; text-align:left; font-size:12pt; padding-left:8px; height:26px;"); //Set div attributes 
     leftDiv.style.background = divColor; 
     a = document.createElement('a'); 
     a.setAttribute('href', 'google.com'); 
     user_name = a.appendChild(document.createTextNode(fullName + ' ')); 

     leftDiv.appendChild(user_name); // Add name to left div 
+1

Một liên kết đến trang web khác, tôi nghĩ, phải sử dụng tên URI/tên miền đầy đủ: 'google.com' cần phải là' http: // google.com' để liên kết 'href' Google. –

+0

Nó vẫn hiển thị dưới dạng văn bản tĩnh thay vì liên kết. – mkyong

+0

Bạn không bao giờ chèn liên kết vào tài liệu, chỉ có nút văn bản. 'a.appendChild' trả về nút vừa được nối. –

Trả lời

0

Hãy thử điều này: http://jsfiddle.net/HknMF/5/

var divColor = "red"; 
var fullName = "bob"; 

var leftDiv = document.createElement("div"); //Create left div 
     leftDiv.id = "left"; //Assign div id 
     leftDiv.setAttribute("style", "float:left; width:66.5%; line-height: 26px; text-align:left; font-size:12pt; padding-left:8px; height:26px;"); //Set div attributes 
     leftDiv.style.background = divColor; 
     a = document.createElement('a'); 
     a.setAttribute('href', 'google.com'); 
     a.appendChild(document.createTextNode(fullName + ' ')); 

     leftDiv.appendChild(a); // Add name to left div 

    document.body.appendChild(leftDiv); 
18

Nhìn vào ví dụ này:

http://jsfiddle.net/ajXEW/

tôi đã thêm một số ý kiến ​​bên trong mã mà giải thích các bước khác nhau.

var leftDiv = document.createElement("div"); //Create left div 
    leftDiv.id = "left"; //Assign div id 
    leftDiv.setAttribute("style", "float:left; width:66.5%; line-height: 26px; text-align:left; font-size:12pt; padding-left:8px; height:26px;"); //Set div attributes 
    leftDiv.style.background = "#FF0000"; 
    a = document.createElement('a'); 
    a.href = 'google.com'; // Insted of calling setAttribute 
    a.innerHTML = "Link" // <a>INNER_TEXT</a> 
    leftDiv.appendChild(a); // Append the link to the div 
    document.body.appendChild(leftDiv); // And append the div to the document body 
+0

Nó hoạt động. Cảm ơn! – mkyong

+0

Tôi đã cập nhật câu trả lời với một số nhận xét mới vào mã. –

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