0

私はドットネットでウェブサイトを開発しています。

//function to close SearchSchool.aspx
function CloseSchoolSearch()    
{
    //storing values
    window.close();
    //call function in code behind
}

これは外部 .js ファイルの JavaScript 関数です。この関数を使用して、aspx ページの非表示のコントロールにいくつかの値を保存し、ポップ ウィンドウを閉じます。その後、コード ビハインドで関数を実行したいと思います。呼び出したいメソッドを含むこの関数.aspxページを含めることはできません。誰かがこれを行う方法を教えてくれますか

4

2 に答える 2

1

私が質問を理解しているように、あなたは2つの非常に異なることについて話している. .ASPX ページはサーバーでレンダリングされ、JavaScript コードはクライアント側でレンダリングされます。

JS から aspx ページから関数を呼び出すということは、呼び出しで言及したパラメーターを使用して、ページをレンダリングするためにサーバーを呼び出す必要があることを意味します。

その場合にのみ、サーバーはページを再レンダリングし (ajax の場合もあります)、これらのメソッドを呼び出します。

それ以外の場合、サーバー側のコードはクライアント側に送信されていません。

クライアント側:

任意のフレームワークを使用することも、独自のフレームワークを実装することもできます。簡単にするためにjqueryを使用します

/* attach a submit handler to the form */
 $("#form_name").submit(function(event) {
/* stop form from submitting normally */
event.preventDefault(); 
/* get some values from elements on the page: */
    url ="<server url>";

var $inputs = $('#form_name :input');

var dataString="";
$inputs.each(function() {
    if (this.type != "submit" && this.type != "button")
    dataString += (this.name +"="+ $(this).val() +"&").trim();

});

/*Remove the & at the end of the string*/
dataString = dataString.slice(0, -1);

/* Send the data using post and put the results in a div */
$.post( url, dataString,
  function( data ) {
  }
);

serialize 関数は、dataString の代わりにその出力を追加するだけで機能します。

于 2013-01-19T09:50:46.317 に答える
0

<script></script>外部から読み込まれたファイルを使用して、HTML ページ内で定義された JavaScript 関数を呼び出したいとのご要望を承りました.js

外部 JS がロードされたときに、内部 JavaScript 関数が使用可能であることを確認してください。

localFoo()HTML コード内で定義された関数を呼び出したい場合は、次のようにします。

// Check for the function availability
if(typeof localFoo != undefined) {
    localFoo(arg);
}
于 2013-01-19T09:43:18.483 に答える