2013-09-26 281 views
-1

我需要創建一個按鈕點擊鏈接,並點擊同樣的鏈接。我測試的創建一個鏈接,並點擊一個按鈕點擊

<script type="text/javascript"> 
function download() 
{ 
    alert("Hello"); 
    var link=document.createElement("a"); 

    link.href="https://stackoverflow.com/questions/4772774/how-do-i-create-a-link-using- javascript"; 
document.getElementById(link).click(); 

// here it says "cannot click on null", means id is not link, then how can i obtain the id 

alert("Hello again"); 

} 
</script> 
<button type ="button" value="Download" onClick="download();">Downloads</button> 

我需要這所提到的方法,因爲,在按鈕的點擊,我將作出一個GET呼叫,我會收到一個URL,然後我需要點擊URL(製作下載按鈕,鏈接可能會有所不同)。有沒有其他的方式來做到這一點?

我refferd:How do I programmatically click a link with javascript?

How do I create a link using javascript?

爲實現這一點,但沒有成功。

+1

你正在嘗試getElementById(鏈接),但「鏈接」不是一個Id,它是一個元素。給鏈接一個id然後使用該id來獲取它並點擊()。 – nebulae

+0

爲什麼你需要創建並點擊鏈接?如果你已經有了URL,那麼你可以將'window.location'設置爲那個URL? – David

回答

2

看來你真的只是想改變頁面的位置,而不是實際追加的鏈接都:

location.href = 'your link you got back' 

如果你真的想在頁面上添加一個物理鏈路:

var link=document.createElement("a"); 
link.id = 'someLink'; //give it an ID! 
link.href="http://stackoverflow.com/questions/4772774/how-do-i-create-a-link-using- javascript"; 

//Add the link somewhere, an appendChild statement will do. 
//Then run this 
document.getElementById('someLink').click(); 
+0

我需要appendChild,它現在工作:)謝謝:) –