-1

クライアントが Web フォームを完了するために Web サイトにアクセスし、ASP ボタンの送信/クリック時に 2 つの行為を実行する状況があります。

1) 埋め込みフォームの iframe を開く jquery スクリプトを実行し、jquery によって作成された URL (この場合は docusign) を介して情報を取得するサードパーティ サービスに渡します。

2) 送信に関する特定のデータを sql データベース テーブルに挿入するメソッドを実行します。

OnClient は OnClick の前に起動する必要があること、および onclick/severside メソッドを起動するために必要であることが正しく理解されている場合は、ある種のリターン/ポストバックが必要であることを理解しています。したがって、サーバー側のメソッドを起動する最善の方法を理解しようとするのが私の困難でした...どんな考えでも大歓迎です。最初は、ある種の return true 関数を追加することを考えましたが、これがどのように機能するかわかりません。ご意見とご指導ありがとうございます。

したがって、現在、私のaspボタンOnClientClickは、iframeを開く次のjqueryを呼び出しています... Onclickイベントも発生させるためにポストバックする方法もわかりませんか? jqueryを発射/後ろから呼び出すことができない限り?

(フォームを開く/埋め込むために使用されるjquery)

function $$(elem) {return document.getElementById(elem);} //simple id reference

//Powerform/Iframe Specifics

number_messages = 0;
var last_id = "";

function check_messages() { //check for messages from iframe
if (location.hash != last_id) {
    last_id = location.hash;
    number_messages++;
    last_id = last_id.replace("_"," ");
    last_id = last_id.substr(1);
    last_id = last_id.substr(0,last_id.indexOf("&"));
    var message_color;
    var extra_text;
    if(last_id=="Signing Complete" || last_id=="Viewing Complete"){
        message_color="green";
        extra_text = "";
    }else{
        message_color="red";
        extra_text = "<p style='text-align:center'><button type='form.button' onclick='window.location=\"embedded.html\"' style='display:inline;'>Reload form?</button></p>";
    }
    document.getElementById("powerform").innerHTML = "<center><h3 style='color:"+message_color+";border:none;font-size:20px;text-align:center;'>" + last_id + "</h3><br/>"+extra_text+"</center>";
}
}

function open_embeddedform(form) {
var form_url = "https://demo.docusign.net/MEMBER/PowerFormSigning.aspx";
form_url += "?PowerFormId=" + $$("Powerformid").value;
form_url += "&UserName=" + $$("UserName").value;
form_url += "&UserEmail=" + $$("UserEmail").value;

    //alert(form_url);

$$("powerform").innerHTML = '<iframe id="document" src="' + form_url + '" border="0"></iframe>';
}

setInterval(check_messages, 200);
4

2 に答える 2

0

あなたのOnclientclick呼び出しがtrueを返すことを確認してください。詳細については、この投稿をご覧ください。

于 2013-11-01T00:09:25.930 に答える