JSP上onSubmit的问题

时间:2011-02-03 02:01:07

标签: javascript jsp javascript-events jspinclude

所以,我在JSP上有这个表单:

<form name="<%=formName%>" method="post" action="<%=actionURL%>" target="_parent" onsubmit="submitForm('<%=String.valueOf(isAbstract)%>','<%=formName%>'); return false">

然后我在包含文件中有以下javascript:

function submitForm( isAbstract , formName ) {
    var o = "document.forms['" + formName + "']";
    var form = eval(o);
    if (isAbstract)
    {
            alert("Error");
            return;
    }
    if (!form.AutoName.checked)
    {
        if (form.name.value == "")
        {
            alert("Some text");
            return;
        }
    }
}

好吧,我减少了函数以使其更简单,但问题是无论我做什么,我都会为这两个参数获取未定义的值。这让我很生气,因为我在其他标签上有类似的代码可以正常工作(除了它在带有onChange动作的组合框标签上)。

有什么想法吗?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

我看到您使用target属性将表单提交到父框架。您是否将子iframe中的值提交到父窗口?如果是,这个表单是否存在于父框架中?

Alterantively,您可以简单地传递“this”并将其作为表单对象进行访问。

例如,

<form onsubmit="submitForm(this)">

function submitForm(formObj){
  var fieldTxt1Value = formObj.txt1.value;

}

答案 1 :(得分:0)

尝试放置一个 return false; 在你的功能结束时。

查看代码,您将测试第一个参数是否为true。但它始终是一个字符串,因为你在电话中写了引号。这是你想要的吗?