我想添加" https://"提交时的表单,不显示文本提交框。到目前为止,我有一个脚本:
<script>
function formSubmit(){
var x=document.getElementById(“formname”);
for (var i=0;i<x.length;i++){
if(x.elements.item(i).id == 'q' && x.elements.item(i).value != "" )
x.elements.q.value='https://'+x.elements.item(i).value;
document.getElementById("formname").submit();
}
</script>
和表格:
<form name="formname" method="GET" action="http://google.com/search" onsubmit="return (this.q.value == '') ? false : true; >
<input type="text" name="q" size="32" maxlength="256" value="" />
<input type="submit" name="btnG" value="Search" />
但无法弄明白。谁知道我做错了什么?
答案 0 :(得分:1)
你绝对不想尝试在你的功能中再次提交表格;完成通话后,只要您不return false
,它就会继续提交。
你的功能应该是:
function formSubmit(){
var e=document.forms.formname.q;
if(e.value){
e.value='https://'+e.value;
} return true;
}
您的表单onsubmit
属性...
<form onsubmit="return this.q.value != '' && formSubmit()">