1

これが私のシナリオです。tiff ファイルをマージできる ASP Web サイトがあります。したがって、これを行うには ac# 関数を使用する必要があり、JavaScript イベントの後に呼び出されます。c# は次のようになります。

public void mergeImages(string initialUrl, string lastImageUrl)
        {....}

次のような 2 つの隠しフィールドを作成しました。

 <input type="hidden" id="hi1" value="D:\\ProvaUpload\\1.tif" />

関数に渡す値を取得するには、js 変数を渡す方法がわからなかったからです。この方法で関数を呼び出します。

'<%mergeImages(par1,par2); %>';

変数値を関数に渡すにはどのような方法がありますか?

4

4 に答える 4

1

one of the easy way to achieve this :-

As you already have two hidden fields but must add runat attribute to it ,so that you can get their values at server side. Let's Say:-

 <input type="hidden" id="hi1" value="D:\\ProvaUpload\\1.tif" runat="server" />
 <input type="hidden" id="hi2" value="D:\\ProvaUpload\\2.tif" runat="server" />

and Make a hidden button :-

<asp:button id="btnhidden" runat="server" Text="hide" Onclick="btnhidden_Click" Style="display:none"/>

Now you can click the button in javascript function :-

function UploadFinished()
{
   //your JS code:-
   // After finish uploading ..Click the button .. i have used jquery for simplicity:-
   $('input[id$="btnhidden"]').click();
}

Now in your code behind :-

protected void btnhidden_Click(Object sender,EventArgs e)
{
   // you can get hidden fields values here ....
   string val1=hi1.Value;
   string val2=hi2.Value;
   // Call your merge function here :-
    mergeImages(val1,val2);
}
于 2013-08-19T09:44:33.240 に答える
1

出力で非表示になる追加のボタンを取得する必要があるだけです。

<asp:button id="btnGetAndPassvalues" runat="server" Text="hide" Onclick="btnGetAndPassvalues_Click" Style="display:none"/>

これで、javascript 関数は次のようになります。

<script>
    $('[id$=btnUpload]').live('click', function (e) {
        // code to finish Upload prosess
        $('[id$=btnGetAndPassvalues]').click();
    });
</script>

以上で、クリック イベントで非表示フィールドの値を取得できます。

protected void btnGetAndPassvalues(Object sender,EventArgs e){
 string hd1=hiden1.Value;
 string hd2=hiden2.Value;
}

または、AJAX 呼び出しを行うことができます。

于 2013-08-19T11:51:10.767 に答える