使用javascript在提交时将文本添加到表单中

时间:2015-02-10 20:27:47

标签: javascript html forms

我想添加" 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" />

但无法弄明白。谁知道我做错了什么?

1 个答案:

答案 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()">