3

メソッドを使用click()してボタンをクリックすると、送信に失敗しました。
しかし、マウスを使用してその Web ページのボタンをクリックすると (送信フォームは同じです)、機能します。

HTML ファイル:

<button xmlns="http://www.w3.org/1999/xhtml" class="ui-button button1"       type="submit" id="create">
    <span>
        <span>Create</span>
    </span>
</button>

私のユーザースクリプトファイル:

document.getElementById("create").click();

HTML DOM click() を使用してボタンをクリックするにはどうすればよいですか?

4

4 に答える 4

1

おそらくボタンをクリックする代わりに。次のようにJavaScriptでフォームを送信できます

document.getElementByName('form1').submit();

それはあなたの要件を満たしているからです。

于 2013-04-14T09:36:29.187 に答える
0

ボタンの値について柔軟に対応できる場合は、次のようにします。

<button xmlns="http://www.w3.org/1999/xhtml" class="ui-button button1" value="submit" type="submit" id="create">

document.getButtonByValue('submit').click();

これはうまくいきます。

jsfiddle リンク

于 2013-04-14T10:04:42.263 に答える
0

クリック方式が常に機能するとは限りません。この回答clickと同様にイベントを送信してみてください:

var targBtn     = document.querySelector ("#create");
var clickEvent  = document.createEvent ('MouseEvents');
clickEvent.initEvent ('click', true, true);
targBtn.dispatchEvent (clickEvent);

ただし、ボタンをクリックしてもまったく機能しない場合があることに注意してください。「AJAX 駆動サイトでの適切なコントロールの選択とアクティブ化」を参照してください。

ボタンはmousedown、 、mouseup、またはいくつかのイベントの組み合わせで動作する場合があります。その質問のテクニックを使用して、コントロールをアクティブにします。 動作しない場合は、ターゲット ページにリンクします。

于 2013-04-14T09:55:42.290 に答える
0

次のように、匿名の自己実行構造で呼び出しをラップします。

(function(){
    document.getElementById("create").click();
})();

clickこれは、javascript がロードされたときをシミュレートします。

于 2013-04-14T09:25:48.867 に答える