Javascript替换HTML字符

时间:2012-04-01 01:28:01

标签: javascript

我是Javascript的总菜鸟。我想要的是有一个搜索表单,表单的输入应该更改网址,然后它会打开一个带有新网址的新标签。

例如,当我输入“生产”时,网址将变为http://production-test.com/test/,然后将使用新网址打开新标签。

我知道这应该是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" />

2 个答案:

答案 0 :(得分:1)

假设您的最终目标不仅是在新标签/窗口中打开新网址,而且您还希望将表单发送到新标签/窗口中的新网址:

您可以在提交表单之前更改表单的操作:

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

并将其添加到form-tag:

onsubmit="return change_url(this)"

表单将立即发送到新网址并进入新窗口/标签页(因为您将目标设置为"_blank"

答案 1 :(得分:0)

您可以使用window.open

window.open(new_url);

如果您希望在新标签/窗口中打开窗口,请将'_blank'作为第二个参数传递

window.open(new_url, '_blank');