0

私は.netにMVCパターンを使用しており、次のコードがあります:

<ol class='TextBoxesGroup'>
    @foreach (Employee e in rm.employees)
    {
         <script type="text/javascript">addPrefRow($(this),@Html.Raw(Json.Encode(e.LanId)), @Html.Raw(Json.Encode(e.FirstName+" "+e.LastName)));</script>
    }
</ol>

問題は、関数「addPrefRow」で最初のパラメーターが null であることです。順序付きリストを表す JQuery オブジェクトにしたいと思います。

関数「addPrefRow」はいくつかの html を作成します。上記のコードに html を直接配置しますが、この関数が呼び出されることもあり、html を 2 つの場所に保持したくありません。

これを行う方法はありますか?

ありがとう!

注:javascriptを実行するalert('test');と動作します。では、なぜここで他の JavaScript を実行できないのでしょうか?

4

1 に答える 1

0
 @{
     // use this var to store the current list id.
     var listId = "";
  }

次に、各リストに一意の ID を指定します。

 @{
      listId = Guid.NewGuid().ToString("N");
  }

...そしてそれを使ってリスト要素を取得します:

<ol class='TextBoxesGroup' id="@listId">

また、jQuery.domready() イベント内に addPrefRow() の呼び出しを配置する必要があります。

<script type="text/javascript">$(function(){addPrefRow($("#@listId"), ...;});</script>
于 2012-08-02T20:07:38.660 に答える