2011-08-23 7 views
1

jqGrid의 요소에서 onClick 선택을 금지하고 싶습니다.선택을 피하십시오 onClick

어떻게 가능합니까 ?? 내가 마이클 슈마허 또는 노란색 컬러로 선택이 될 루카스 포돌스키 관련 행을 클릭하면 다음

이 페이지에 링크 http://www.ok-soft-gmbh.com/jqGrid/UnobtrusiveLinksNew.htm

이동에 대한 예입니다. 반면에 수식 1 또는 Football 관련 행을 클릭하면 선택되지 않습니다. jqGrid의 요소에 대해이 동작을 얻고 싶습니다.

는 UPDATE : 는 여기에 내가 .down_arrow 클래스에 따라 클릭에 선택을하지 않도록 좀하고 싶습니다 내 코드

$(document).ready(function() 
    { 

$(function() 
    { 
     $("#list").jqGrid 
     ({ 
      url:'example.php', 
      datatype: 'xml', 
      mtype: 'GET', 
      colNames:['RABR member in Circle','Date Sent','Status','Action'], 
      colModel : 
      [ 

       {name:'tax', index:'tax', width:85, align:'left',sortable:false,formatter:format_row}, 
       {name:'invdate', index:'invdate', width:60, align:'center',sortable:false,formatter:format_date}, 
       {name:'amount', index:'amount', width:35, align:'center', sortable:false,formatter:format_status}, 
       {name:'amount', index:'amount', width:55, align:'left',title:false, sortable:false,formatter:format_rate_me,beforeSelectRow: function(rowid, e) { return false; }, 
}, 
      ], 
      pager: '#pager', 
      rowNum:10, 
      rowList:[10,20,30], 
      viewrecords: true, 
      multiselect: true, 
      altclass:'myAltRowClass', 
      altRows:true, 
      width:624, 
      height:'auto' }).navGrid('#pager',{edit:false,add:false,del:false}); 
     }) ;  


     function format_row(cellValue, options, rowObject) 
      { 
       var split_result = cellValue.split("+"); 
       var show_result= "<img src='images1/" + split_result[0] + "'/><b id='pro_name'>"+ split_result[1] + "</b></br><b id='e_add'>" + split_result[2]+"</b>"; 
       return show_result; 
      } 


     function format_date(cellValue, options, rowObject) 
      { 
       var date = "<div class='date'>" + cellValue + "</div>"; 
       return date; 
      } 


     function format_status(cellValue, options, rowObject) 
      { 
       var status_image = "<img src='images/" + cellValue + ".jpg' />"; 
       return status_image; 
      } 


     function format_rate_me(cellValue, options, rowObject) 
      { 
       var optoins = "<div class='rate_me_text'>" + cellValue + "<div class='star_div'></div><div class='down_arrow'></div> <div class='options'><ul><li class='add_me'><a href='#'>Add as a friend</a></li><li class='view_circle'><a href='#'>View Circle Members(23)</a></li><li class='send_msg'><a href='#'>Send messages</a></li><li class='add_to_watch'><a href='#'>Add to watch list</a></li><li class='gifting'><a href='#'>Give a gift</a></li><li class='remove'><a href='#'>Remove from Circle</a></li><li class='block'><a href='#'>Block</a></li><li class='report'><a href='#'>Report abuse</a></li></ul></div></div>";    
       return optoins; 
      } 

    }); 

입니다. 응답

UPDATE에 대한

덕분에

"@Oleg는"

마지막으로 나는 그것을 수행.

여기에 코드 당신이 beforeSelectRow 이벤트 핸들러를 사용할 수있는 행의 선택을 방지하기 위해 귀하의 회신

답변

2

에 대한

altclass:'myAltRowClass', 
     altRows:true, 
     beforeSelectRow: 
     function(rowid, e) 
     { 
      var iCol = $.jgrid.getCellIndex(e.target); 

      if (iCol >=4) 
      { 
       return false; 
      } 
      else 
      { 
       return true; 
      } 
     }, 
     width:624, 

감사합니다. 이벤트 핸들러가 false를 반환하면 행 선택이 금지됩니다. e.target은 사용자가 클릭 한 <td> 요소 또는 해당 하위 요소 (<a> 요소가 <td> 안에 있음)를 검사 할 수 있습니다.

+0

어떻게 beforeSelectRow를 사용할 수 있습니까 ?? 어디에서 beforeSelectRow를 사용할 수 있습니까 ?? colModel 또는 colModel의 바깥 쪽에서 사용합니까 ?? 내 coloumn에서 customformatter를 사용했습니다. 위키의 이벤트 페이지에서 다음 코드가 있습니다. 'var lastSel; . jQuery를 ("#의 gridid")있는 jqGrid ({ ... onSelectRow : 함수 (ID) { 경우 (ID && == lastSel ID) { jQuery를 ('#의 gridid') restoreRow (lastSel)!. lastSel = 아이디; } jQuery를 ('#의 gridid') editRow (ID, 사실). }, ... 은});' 그러나 그것은 나에게 명확하지 않다. 그것에 대해 몇 가지 예를 들어 주시겠습니까 ?? – Foysal

+0

@Foysal :'onSelectRow'와 같은 방식으로'beforeSelectRow'를 사용할 수 있습니다. 다른 데모를 보려면 [데모] (http://www.ok-soft-gmbh.com/jqGrid/CellClick1.htm)에서 그리드 안의 아이콘을 클릭하십시오. 여전히 질문이있는 경우 질문에 (* 주석에) * * 코드를 포함시킬 수 있으며 코드에'beforeSelectRow' 핸들을 삽입 할 수 있습니다. – Oleg

+0

'Oleg' 너 거기 있니? – Foysal

관련 문제