복붙노트

[JQUERY] 있는 jqGrid 필요 하이퍼 링크 - jQuery를 통해 캡처 값 필요

JQUERY

있는 jqGrid 필요 하이퍼 링크 - jQuery를 통해 캡처 값 필요

해결법


  1. 1.대부분의 경우는 같은 것을 사용하는 것이 충분

    대부분의 경우는 같은 것을 사용하는 것이 충분

    formatter: "showlink",
    formatoptions: {
        baseLinkUrl: "/Program/",
        showAction: "EditMicro",
        idName: "myId"
    }
    

    경우에 링크처럼 생성됩니다

    <a href="/Program/EditMicro?myId=123">text from the cell</a>
    

    당신이 행동에 행의 ID가있는 경우 당신은 당신이 데이터베이스에서 직접 기타 필요한 추가 정보를 얻을 수 있습니다.

    또는 당신은이 질문에 대해 설명하는 간단한 트릭을 사용할 수 있습니다. 당신은 CSS 클래스를 정의

    .myLink { text-decoration: underline; cursor: pointer; }
    

    그럼 당신은 다음과 같은 사용자 정의 포맷을 사용할 수 있습니다

    formatter: function (cellValue, options, rowObject) {
        return "<span class='myLink'>" + cellValue + "</span>";
    },
    cellattr: function () {
        return " title=\"Click here to go to EditMicro\"";
    }
    

    길에서 당신은 링크와 같은 사용자를 찾을하는 <기간>을 생성합니다. 당신은 beforeSelectRow 또는 onCellSelect 콜백을 사용하여 셀에 클릭 이벤트를 잡을 수 있습니다. 예를 들면

    beforeSelectRow: function (rowid, e) {
        var $td = $(e.target).closest("td"),
            iCol = $.jgrid.getCellIndex($td[0]);
        if (this.p.colModel[iCol].name === 'note') {
            window.location = "/Program/EditMicro/" +
                encodeURIComponent(rowid);
            return false;
        }
    }
    

    필요한 경우 당신은 클릭 된 행에서 다른 데이터를 얻을 대상 URL에 정보를 추가 할 getCol 또는 getRowData를 사용할 수 있습니다.


  2. 2.당신은 트리거에서 기본 클릭 동작을 방지하기 위해있는 jqGrid 선언에 다음을 추가 할 수 있습니다.

    당신은 트리거에서 기본 클릭 동작을 방지하기 위해있는 jqGrid 선언에 다음을 추가 할 수 있습니다.

    .click(function (event) { event.preventDefault(); })
    

    그런 다음을 통해 자신의 클릭 이벤트 처리기와 같은 뭔가를 할 수

    $('a').click(function () { //ToDo: Extra actions before submitting to controller });
    

    당신은 또한 또한 그리드가 구축됨에 따라 그 일을하도록 표시 할 예정 하이퍼 링크에 추가 정보를 추가하는 당신에게 자신 만 포매터를 구축 할 수 있습니다.

    편집 : 나는 (당신이 원하는 추가 작업을 수행하는 함수를 직접 코딩 할 위치를 보여 예로) 경고를 표시 할 내 자신의 기본 클릭 기능과 결합을 해제 작업의 예. http://jsfiddle.net/QEzhr/33/

  3. from https://stackoverflow.com/questions/14529358/jqgrid-need-hyperlink-need-to-capture-value-through-jquery by cc-by-sa and MIT license