2012-04-01 231 views
0

我是Javascript的總noob。我想要的是有一個搜索表單,並且表單的輸入應該改變網址,然後它會打開一個新的標籤與新的網址。Javascript替換HTML字符

例如,當我輸入'production'時,url將變成http://production-test.com/test/,然後一個新標籤頁將打開並顯示新的url。

我知道這應該是在Javascript中,但我不知道它將如何能夠返回新的url。

我有這個HTML到目前爲止根本不工作。

<script language="javascript"> 
function change_url(result) { 
    #var result = document.getElementById().value; 
    var new_url = "http://" + result + "-test.com/test/'; 
    # open new window with the new url 
} 

<form id="search-box" name="search_box" method="get" 
action="http://variable-test.com/test/" target="_blank""> 

<input id="search-text" type="text" autocomplete="off" 
class="form-text-box no-focus" name="c" value="" aria-haspopup="true"> 
<input type="radio" id="rel" name="sort" value="1" onchange="saveType('rel');" /><span data-message="TypeOp1">Relevance</span><br /> 

<input id="search-button" type="submit" /> 
+0

已有進展。感謝莫爾博士。但是現在我不知道如何傳遞參數?從Dr. Molle腳本... form.action =「.../test /?」 +「new_paramters」。出於某種原因,放棄問號後的任何內容。 – Carmen 2012-04-01 04:49:29

回答

0

您可以使用window.open

window.open(new_url); 

如果你喜歡的窗口在新標籤/窗口中打開,通過在 '_blank' 作爲第二個參數

window.open(new_url, '_blank'); 
+0

但html仍然會自行打開窗體,甚至沒有調用javascript函數 – Carmen 2012-04-01 01:36:08

+0

我想我正在尋找一個Javascript函數/教程,它將創建一個帶有文本框和單選按鈕的窗體,然後我可以操作窗體的內容,然後打開一個新標籤頁。 – Carmen 2012-04-01 01:38:00

+0

對不起,你真的不知道現在想要什麼><,我基於我的回答你的要求,說'當我進入'生產',網址將成爲http://production-test.com/test/,然後一個新的選項卡將打開新的url.' – 2012-04-01 01:38:02

1

假設你最終目標不僅是在新選項卡/窗口中打開新網址,而且還希望將表單發送到新選項卡/窗口中的新網址:

您可以提交表單之前改變形式的行動:

function change_url(form) { 
    var result = document.getElementById('inputId').value;   
    form.action = "http://" + result + "-test.com/test/"; 
    return true; 
} 

這添加到窗體標籤:

onsubmit="return change_url(this)" 

的形式將現在sended到新網址並進入一個新的窗口/選項卡(因爲您將目標設置爲"_blank"

+0

嗯。有些事情是不對的。它仍然使用我在表單中指定的url。我可以在哪裏粘貼新代碼?也許我不是把它放在正確的地方。 – Carmen 2012-04-01 01:56:31

+0

對不起,我忘記了功能裏面的**結果**,現在已經修復了。 – 2012-04-01 02:00:46

+0

謝謝,但它仍然無法正常工作。它仍然使用表單中的網址。 – Carmen 2012-04-01 02:03:54