2010-12-28 6 views
0

私が構築しているOnBase電子フォームがあります。フォームには、すべてsubmitという3つのボタンがあります。 OnBaseは、フォームを送信するために使用されたボタンの名前に基づいて、さまざまなことを行います。ボタンのnameOBBtn_CrossReferenceの場合、クロスリファレンス文書を含む別のウィンドウが開きます。そのボタンをプログラムでクリックする必要があります。名前付きJavaScript自動POST

JavaScriptを使ってフォームを送信する方法についていくつかの記事を読んだことがありますが、目標を達成できないようです。私はちょうどPOSTにそれがOBBtn_CrossReferenceと名付けられたボタンから来るように見えるようにする必要があります。

私はデータを提出する必要はありません。ページが現在設定されている方法では、ページ全体が既にフォームになっているので、他のフォームボタンの機能を無効にしたくないので、そのままにしておく必要があります。

UPDATE: 以下bodyタグでonloadイベントから呼び出して、ボタンの記事ページをリロードしてコールが終わっ作られ、何度も繰り返し無制限の子ウィンドウを産卵しているのでテストした提案。ポストバックではなく、ページが初めて読み込まれたときにのみ、そのボタンをクリックするようにする方法についての提案をいただければ幸いです。

+0

未回答の質問がありますか?なぜ答えが選ばれなかったのだろうか。 –

答えて

0

私は少し遅れてこの投稿への思いを知っていますが、これを成し遂げるためにクッキーを試してみて、活用することができます

if (document.cookie.indexOf('xref=true', 0) < 0) { 

    // Set the xRef cookie, so we do not fire it again for this form. 
    document.cookie = 'xref=true'; 

    //alert(document.cookie); 
    document.getElementById("OBBtn_CrossReference").click(); 
} 
else { 

    document.cookie = "xref=false"; 
    //alert(document.cookie); 
} 

私は10.0に厚く、シンクライアント上でこれをテストし、それがうまく働きました。

このサイトの投稿は自分自身であり、必ずしも私の会社のポジション、戦略または意見を表すものではありません。

2

リンク、ボタン、チェックボックスにはclick()メソッドがあります。たとえば、私はchromeのコマンドラインからdocument.getElementById('submit-button').click()を実行してこのコメントを提出しました。

+0

ニース、それは質問に答えると私は笑った。 – Hemlock

+0

うわー、それはプログラムでクリックする方法に直接答えます。愚かな私。ありがとう。 – cjbarth

+0

私はこれをテストしており、期待通りに動作しないことが判明しました。ボタンがポストすると、ページがリフレッシュされ、.click()イベントのonloadイベントが再度発生します。この呼び出しをどこに置くべきかについての考えは、何度も呼び出されることはありませんか? – cjbarth

関連する問題