0

私は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アクションを含むコンボボックスタグにあることを除く)。

何か考えはありますか?

4

2 に答える 2

1

ターゲット属性を使用してフォームを親フレームに送信しているようです。子iframeから親ウィンドウに値を送信していますか?はいの場合、このフォームは親フレームに存在しますか?

または、単に「this」を渡して、フォームオブジェクトとしてアクセスすることもできます。

例えば、

<form onsubmit="submitForm(this)">

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

}

于 2011-02-03T02:15:21.890 に答える
0

return false; 関数の最後に Atを配置してみて ください。

コードを見ると、最初のパラメーターが true かどうかをテストしています。ただし、呼び出しで引用符を記述するため、常に文字列です。それはあなたが欲しいものですか?

于 2011-02-03T02:37:06.807 に答える