2010-05-13 58 views
0

我遇到了使用ASP.NET MVC的JQGrid的問題。我試圖按照this的例子(在你進入該鏈接後,在頁面的左邊,請點擊實時數據操作,然後編輯行),但是我的編輯功能永遠不會被調用(即它永遠不會進入。$("#bedata").click(function()有誰知道可能是什麼問題jqGrid - 編輯功能永遠不會被調用

<script type="text/javascript"> 
     var lastsel2; 

     jQuery(document).ready(function() { 
      jQuery("#editgrid").jqGrid({ 
       url: '/Home/GetMovieData/', 
       datatype: 'json', 
       mtype: 'GET', 
       colNames: ['id', 'Movie Name', 'Directed By', 'Release Date', 'IMDB Rating', 'Plot', 'ImageURL'], 
       colModel: [ 
        { name: 'id', index: 'Id', width: 55, sortable: false, hidden: true, editable: false, editoptions: { readonly: true, size: 10} }, 
        { name: 'Movie Name', index: 'Name', width: 250, editable: true, editoptions: { size: 10} }, 
        { name: 'Directed By', index: 'Director', width: 250, align: 'right', editable: true, editoptions: { size: 10} }, 
        { name: 'Release Date', index: 'ReleaseDate', width: 100, align: 'right', editable: true, editoptions: { size: 10} }, 
        { name: 'IMDB Rating', index: 'IMDBUserRating', width: 100, align: 'right', editable: true, editoptions: { size: 10} }, 
        { name: 'Plot', index: 'Plot', width: 150, hidden: false, editable: true, editoptions: { size: 30} }, 
        { name: 'ImageURL', index: 'ImageURL', width: 55, hidden: true, editable: false, editoptions: { readonly: true, size: 10} } 
       ], 
       pager: jQuery('#pager'), 
       rowNum: 5, 
       rowList: [5, 10, 20], 
       sortname: 'id', 
       sortorder: "desc", 
       height: '100%', 
       width: '100%', 
       viewrecords: true, 
       imgpath: '/Content/jqGridCss/redmond/images', 
       caption: 'Movies from 2008', 
       editurl: '/Home/EditMovieData/', 
       caption: 'Movie List' 
      }); 
     }); 

     $("#bedata").click(function() { 
      var gr = jQuery("#editgrid").jqGrid('getGridParam', 'selrow'); 
      if (gr != null) 
       jQuery("#editgrid").jqGrid('editGridRow', gr, { height: 280, reloadAfterSubmit: false }); 
      else 
       alert("Hey dork, please select a row"); 
     });    
    </script> 

相關的HTML是在這裏:?

<table id="editgrid"> 
</table> 
<div id="pager" style="text-align: center;"> 
</div> 
<input type="button" id="bedata" value="Edit Selected" /> 

回答

1

由於我沒有看到它在你的示例代碼,您需要從調用所有的這在jQuery內ready事件:

jQuery(document).ready(function($) { 

    var lastsel2; 

    jQuery(document).ready(function() { 
    ... 
}); 

否則,您的代碼可能在DOM準備好之前執行,這可能解釋爲什麼您的click處理程序永遠不會被設置。

+0

就是這樣,非常感謝! – dcp 2010-05-14 12:16:39

相關問題