提交表格时的表现问题

时间:2011-09-23 15:02:50

标签: javascript html forms submit

我在html中有一个表单来验证用户输入。问题是即使在localhost上也需要花费大量时间才能跳转到“操作”页面。继承人的代码

<form action="Activity.php" method="GET" >

<div style="display:none">
<input type="text" id="chapter" name="chapter"/>
<input type="text" id="book" name="book"/>
<input type="text" id="activity" name="activity"/>
</div>

<input type="image" src="includes/file.png" onClick="return validateForm()" title="Create New Activity" >

</form>

validateForm的代码是:

function validateForm()
    {
        document.body.style.cursor='wait';
        if(document.getElementById("book").value==null || document.getElementById("book").value==""
                    || document.getElementById("chapter").value==null || document.getElementById("chapter").value=="")
        {
            document.body.style.cursor='default';
            alert("You cannot create an activity at the selected location.");
            return false;
        }



        var name=prompt("Please enter the New Activity Name","New Activity Name");
        if (name==null || name=="")
        {
            document.body.style.cursor='default';
            return false;
        }

        document.getElementById('activity').value=encodeURI(name);
        return true;

    }

如果我删除了上面函数中的提示,它会立即跳转到activity.php页面,但是如果我保留提示并询问活动名称,则需要很长时间才能加载所需的页面(可能会在表单中显示提交过程中断了提交过程,点击提示“确定”按钮后,提交再次开始!!不知道:S)在提交表单时,应该从用户那里获取输入的解决方案(快速解决方案)是什么?谢谢!

2 个答案:

答案 0 :(得分:0)

此对象不存在:document.getElementById('activity')

答案 1 :(得分:0)

试试这个。

function validateForm()
    {
        document.body.style.cursor='wait';
        if(document.getElementById("book").value || document.getElementById("chapter").value)
        {
            document.body.style.cursor='default';
            alert("You cannot create an activity at the selected location.");
            return false;
        }



        var name=prompt("Please enter the New Activity Name","New Activity Name");
        if (name)
        {
            document.body.style.cursor='default';
            return false;
        }

        //document.getElementById('activity').value=encodeURI(name);
        return true;

    }