此脚本的工作原理如图所示。
我想替换:
alert(q2) ;
使用:
window.location.href = q2 ;
重定向,但不起作用。
<form onSubmit=" var q = document.getElementById('addTable') ; var q2 = 'http://www.mysite.com/add/' + q.options[q.selectedIndex].text + '/' ; alert (q2) ; ">
Add a new record in
<select id="addTable">
<option value="" >[choose a table]</option>
<option value="articles" >articles</option>
<option value="blogs" >blogs</option>
</select>
<input type="submit" value="go">
</form>
答案 0 :(得分:1)
您需要从处理程序return false;
(或使用event.preventDefault();
)。另外,我建议绑定一个处理程序,而不是使用内联JavaScript。
<form id="addForm">
Add a new record in
<select id="addTable">
<option value="">[choose a table]</option>
<option value="articles">articles</option>
<option value="blogs">blogs</option>
</select>
<input type="submit" value="go">
</form>
<script type="text/javascript">
document.getElementById('addForm').addEventListener('submit', function(e){
e.preventDefault();
var q = document.getElementById('addTable'),
q2 = 'http://www.mysite.com/add/' + q.options[q.selectedIndex].text + '/';
window.location.href = q2;
});
</script>
答案 1 :(得分:1)
最好按照以下方式执行此操作
<script>
function go(){
var q = document.getElementById('addTable') ; var q2 = 'http://www.site.com.au/add/' + q.options[q.selectedIndex].text + '/' ; window.location=q2 ;
}
</script>
<form>
Add a new record in
<select id="addTable">
<option value="" >[choose a table]</option>
<option value="articles" >articles</option>
<option value="blogs" >blogs</option>
</select>
<input type="button" value="go" onclick="go()">
</form>