0

I have javascript code which returns a partial view.

var url1="";
 $.get(url1, { 'id': Gid }, function (result) {
 $("#abcd").html(result);   
  });

View returning is

<div id="goalReport">
</div>

<script type="text/javascript">

   function LoadReport() {
   }
  </script>

i want to call the load report function on success of the get function i wrote.

How can i call the load report function instead of appending it in a div abcd i tried like

result.LoadReport

but it is not working

4

2 に答える 2

0
$.get(url1, { 'id': Gid }, LoadReport);

これは、あなたの望むことですか?申し訳ありませんが、私はあなたの質問を完全には理解していません

于 2012-11-08T06:14:45.390 に答える
0

JavaScript で定義するものはすべて同じコンテキストにあります。スコープ定義があり、名前空間を持つことさえできますが、C# や他の言語とは異なります。したがって、コードを次のように変更するだけです。

var url1="";

$.get(url1, { 'id': Gid }, function (result) {

     //If the result contains the HTML code you mentioned you should append it to the document
     //and browser will initialize the script tag and everything inside it (So you MUST append the script tag to be initiated). So you can call the 
     //function whenever the script tag is loaded. Because you didn't use the src attribute to 
     // reference a javascript file, I think you can call the function on the next line, after
     // appending the element.

     $(result).appendTo(document.body);    

      LoadReport();

   }
);

ただし、一部の RegEx または文字列関数によってスクリプトの内容を検索"eval"し、ドキュメントに html コードを追加せずに関数を呼び出して初期化する別の方法があります。私自身は、この方法はお勧めしません。これはバグのあるアイデアであり、ばかげた例外が発生する可能性があるためです。

乾杯に役立つことを願っています

于 2012-11-08T06:14:54.213 に答える