2016-10-07 3 views
1

\kartik\grid\EditableColumn 위젯에는 ajax 요청과 함께 전달 된 매개 변수를 서버에 대체 할 수있는 ajaxSettings라는 매개 변수가 있습니다. 내가하고 싶은 일은 popover에서 서버로 오는 값과 함께 선택된 행 ID를 동적으로 전달하는 것입니다. 그래서yii2-grid EditableColum 위젯의 ajax 호출에서 동적 매개 변수를 전달하십시오.

Editable::widget(['name' => 'publishDate', 'ajaxSettings' => ['ids' => [1,2,3]]]) 

처럼 컴파일 시간에 PHP 배열에서 오는 그 통과 정적 매개 변수를 어떻게 관리하지만 내가 너무

Editable::widget([ 
    'name' => 'publishDate', 
    'ajaxSettings' => [ 
     'ids' => '$("#books-grid").yiiGridView("getSelectedRows")' 
    ] 
]) 
같이 선택된 열의 ID를 잡아 거기 JQuery와 선택기를 사용할 수 없습니다 것 같다

var arrayIds = $("#books-grid").yiiGridView("getSelectedRows"); 

그리고 위젯에 할당 :

+0

흥미로운 질문입니다. 찾으려면 몇 가지 시험을해야합니다. –

답변

0

아마 당신은이 같은 편집 : 위젯 외부 변수를 ([만들기 시도 할

이 도움이 16,
Editable::widget([ 
    'name' => 'publishDate', 
    'ajaxSettings' => [ 
     'ids' => arrayIds 
    ] 
]) 

희망,

레오.

+0

내가했는데, ID가 동적으로 그리드의 선택한 확인란에서 온 그리고 이것은 아약스 호출에서 데이터 매개 변수의 재정의를하는 것 같습니다. – silintzir

+0

배열을 yiiGridView에서 인덱싱 된 배열로 변환해야한다고 생각합니까? 이 함수를 사용하여 배열을 인덱스 배열로 변환해볼 수 있습니까? newArray = $ .makeArray (arrayIds); – Leo