0

私は、フォーム要素の送信時にユーザーに質問するプレーンな(派手なフレームワークではない)javascriptを持っています。答えが true を返す場合、スクリプトはフォームのアクションを特定の URL (内部にサーバー側のロジックを含む) に設定し、そのフォームの sumbit メソッドを呼び出します。または、少なくとも理論的には、それが本来の目的です。しかし、そうではありません.. 何もしません。フォームを送信しているように見えますが、送信した場合は、他のファイル (アクション プロパティの値として設定されている) のサーバー側ロジックにより、ユーザーが別の場所に移動することが保証されます。

ここに私のフォームがあります:

<form name='myForm' id='myForm' method='post' onSubmit='annoyTheUser(this);'>

ここに私のJavaScript関数があります:

function annoyTheUser(theForm)
{
    if(confirm("blah?"))
    {
     theForm.action = 'savequestion.asp';
     theForm.submit();
    }
}
4

3 に答える 3

2

JS は次のようになります。

function annoyTheUser(theForm)
{
    if(confirm("blah?"))
    {
        theForm.action = 'savequestion.asp';
        return true;
    }
    else
        return false;
}
于 2010-01-25T07:37:25.587 に答える
0

フォームを送信させる部分も追加できますか。スクリプトは問題ないようです。それだけが疑わしい。

于 2010-01-25T07:39:15.520 に答える
0

これを試して

<form name='myForm' id='myForm' method='post' onSubmit='return annoyTheUser(this);'>

そして、スクリプトは

function annoyTheUser(theForm)
{
if(confirm("blah?"))
{
theForm.action = 'savequestion.asp';
return(true);
}
else
{
return(false);
}
}
于 2010-01-25T07:42:08.650 に答える