2010-08-02 25 views
2

如何使用onsubmit(在按下回車鍵時執行)使用字符串變量形式中的給定url打開目標窗口來創建表單標記?傳遞URL作爲字符串存儲在變量中以形式的onsubmit

是我到目前爲止有:

<div id="row2"> 

<!-- Intranet Search --> 
<form action="" onSubmit="urlGen(this);" method="get" target="_blank"> 
<input type="text" id="intranet" size="15" value="Search Intranet.." 
    onFocus="this.value = ''" 
    onBlur="this.value = 'Search Intranet..'"/> 
</form> 

<script language="javascript" type="text/javascript"> 
    function urlGen(f) 
    { 
    var i1 = "seg1"; 
    var i2 = f.intranet.value; 
    var i3 = "seg3"; 

    var fullURL = i1 + i2 + i3; 
    f.action = i1 + i2 + i3; 

    //document.write(fullURL); 

    return true; 
    } 
</script> 

<br><br> 

<a href="javascript: void(0)" onClick="urlGen();" target="_blank"> 
    <div id="submit" class="out" 
    onMouseOver="document.getElementById('submit').className = 'over';" 
    onMouseOut="document.getElementById('submit').className = 'out';"> 
    <span>Submit</span> 
    </div> 
</a> 
</div> 

編輯:仍然還沒有解決這一點;任何來自更有經驗的JavaScript人的幫助將不勝感激!

+0

什麼不適合你現在擁有的東西?在表單元素上設置「action」屬性是正確的方法。 – Pointy 2010-08-02 13:16:57

+0

它確實打開一個新的目標窗口在正確的網址,除了搜索詞缺失,我不知道如何,因爲當我添加:alert(fullURL);到腳本它正確顯示我想傳遞到目標窗口的完整url。 – jake 2010-08-02 13:30:03

回答

1

你需要給你的<input>元素的「名稱」值:

<input type="text" name="intranet" id="intranet" size="15" ... 

或者,你的JavaScript代碼可以使用document.getElementById("intranet")去輸入元素的引用。

而且,雖然這不是直接相關的,把一個<div><a>標籤內是無效的標記。

+0

加入name =「intranet」導致這是鏈接到頁面: <?xml version =「1.0」encoding =「ISO-8859-1」standalone =「no」?> <!DOCTYPE GSP(View Source全DOCTYPE ...)> - 0.000363 jake 2010-08-02 13:28:37

相關問題