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”中,第一个参数为空。我希望它是一个代表有序列表的 JQuery 对象。

函数“addPrefRow”创建了一些 html。我会把html直接放在上面的代码中,但是还有其他时候调用这个函数,我不想在两个地方维护html。

有没有办法做到这一点?

谢谢!

注意:如果我执行 javascriptalert('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">

您还需要将对 addPrefRow() 的调用放入 jQuery.domready() 事件中:

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