[View代码:]
<!--循环体-->
<% foreach (User item in Model)
           {%>
        <tr >
            <td>
                <input type="checkbox" id="checkMore" />
            </td>
            <td id="tr_userList">
                 <a id="JqueryOpen" href="#" onclick="javacript:a(1)"><%=item.UserName%></a>
                <%=Html.Hidden("userId",item.UserId) %>
            </td>
          </tr>         
          <% } %>
<!--循环体结束-->
[Jquery代码]:<script type="text/javascript" language="javascript">
function a(dialog) {
            if (dialog == 1) {
                jQuery('#UserInfo').dialog('open'); //这是一个Jquery UI 插件  弹出信息显示框   问题出在这一行:  $.getJSON('/User/UserInfo', { id: $('#userId')[0].value }, function (data) {
                    //为用户信息赋值
                    $('#UserName')[0].value = data.UserName;
                    $('#Sex')[0].value = data.Sex;
                    $('#NickName')[0].value = data.NickName;
                    $('#City')[0].value = data.City;
                    $('#Tel')[0].value = data.Tel;
                    $('#Email')[0].value = data.Email;
                    $('#RegTime')[0].value = data.RegTime;
                    $('#BlogCount')[0].value = data.BlogCount;
                    $('#ConcernCount')[0].value = data.ConcernCount;
                    $('#CommentCount')[0].value = data.CommentCount;
                    $('#FansCount')[0].value = data.FansCount;
                    $('#State')[0].value = data.State;                                   });            }</script>
[Controller代码]:
/// </summary>
        /// <returns></returns>
        public JsonResult UserInfo(int id)
        {
            User user = UserService.getUserById(id);
            return Json(user, JsonRequestBehavior.AllowGet);
        }
   问题:我想请问大家 列表数据因为是循环出来的,我用input隐藏域保存 userid,通过Jquery获取的userId都是一样的,所以我显示出来的用户详细信息都是第一条,  就是这个{ id: $('#userId')[0].value } 因为这个 id 
  能不能动态获取..或者有没有其他办法怎样实现这个点击列表中某列,弹出框显示详细信息功能???

解决方案 »

  1.   

    运行后,看一下客户端生成的HTML中隐藏域的id
      

  2.   


    id 都是一样的.. id为 userId
      

  3.   

    onclick="javacript:a(1)"把ID作为a()方法的参数传递一下
      

  4.   

      自己解决了:
      哈..
        <a id="JqueryOpen" href="#" onclick="javacript:a(1,<%= item.UserId %>)">
        我也是在想传递userId,但一直没成功.     
         现在将循环的userId直接放进去就可以了..缘来这么简单.我太傻了 >.<!