2012-04-28 6 views
0

오늘은 약간의 독특한 도전 과제가 있습니다. cfgrid에 삽입을 기반으로 여러 항목을 검색 할 수있게하려는 클라이언트가 있습니다. 우리는 다음과 같은 웹 양식 있다고 가정 COLDFUSION CFGRID 게시글이있는 데이터 패스


  • 국가 선택 드롭 다운
  • 국가 선택에 의존 AJAX 드롭 다운
  • 도시 선택에 의존 AJAX 드롭 다운을
  • 추가 버튼
    - --------------------------------------------------
  • selecti를 사용하여 행을 채울 CFGRID 사용자가 추가 버튼을 클릭 할 때 켜짐
    ---------------------------------------- ------------
  • 그리고 마지막으로 CLEAR 버튼과 하단에 GO 버튼이 있습니다.

결과 페이지는 데이터베이스를 쿼리하고 선택된 도시에 대한 통계를 얻습니다. 따라서 개인이 미국> 애리조나> 스코 츠 데일과 미국> 애리조나> 플래그 스태프를 선택한다고 가정합니다. 옵션 아래의 표는 각 선택 항목을 '저장'하고 기본 옵션으로 재설정되며 사용자가 추가 옵션을 선택하거나 '실행'을 클릭하기를 기다리고 있습니다.

결과 페이지는 커뮤니티에 대한 통계를 나열하는 열을 생성하고 선택한 각 커뮤니티 사이의 '최고'를 강조 표시합니다.

사용자가 추가 버튼을 선택할 때마다 (세 가지 기준이 선택된 것으로 가정) 선택한 옵션을 표시하는 CFGRID에 정보를 추가하려고합니다. 그런 다음 사용자가 적어도 하나의 국가/도시/상태 옵션을 선택하면 CFGRID의 모든 데이터가 선택한 데이터의 쿼리를 수행하는 다른 페이지로 전달됩니다. 이론 상으로는 사용자가 원하는대로 많은 데이터를 통해 슬러지 데이터베이스를 기꺼이 가져 와서 '로딩'화면을 통해 대기 할 수 있다고 가정하면 사용자는 원하는만큼 많은 커뮤니티를 선택할 수 있습니다.

나는 특별한 순서없이, 이러한 문제에 봉착 : - 나는 클라이언트 사양에 따라 사용해야합니다 HTML 그리드가 (없음 자바 나 플래시, HTML을해야합니다) - 내가 어떻게 얻는 아무 생각이없는 선택한 옵션을 CFGRID에 추가합니다. AddRow 함수를 사용하여 추가 버튼이있는 그리드에 데이터를 추가하는 몇 가지 JavaScript가 있다고 가정합니다. 그러나 interwebs에서 데이터를 찾는 방법을 찾을 수없는 것 같습니다. - 위의 도전을 정복 한 후 어떻게해야합니까? 결과 페이지에 그리드의 데이터? 하나의 큰 문자열이나 구조를 전달하는 것에 대해 생각했지만 URL이나 게시를 통해이를 수행하는 방법이나 그리드에서 데이터를 가져 오는 방법을 모르겠습니다. 옵션 페이지에서 결과 페이지로 전달되는 일종의 문자열을 코딩하는 것이 더 나은지 궁금해합니다. CFGRID의 내용을 다루는 대신 get 메서드를 사용하고 CFGRID를 '더미'표시 컨테이너로만 사용하도록하는 것입니다. - 마지막으로 통과가 완료된 후 구조를 반복하고 각 데이터 행에서 CFQUERY 또는 CFSTOREDPROC를 수행 한 다음 결과 페이지에 표시해야하는 통계를 가져와야합니다. 이것은 옵션 선택 페이지에서 결과 페이지로 데이터를 가져 오는 방법에 따라 달라질 것이라고 가정합니다.

감사합니다.

답변

0

이 문제를 해결하는 가장 좋은 방법은 SerializeJSON 호출과 Deserialize JSON 호출을 앞뒤로 사용하는 것이 었습니다. 자바 스크립트 표기법을 사용하여 한 페이지와 다른 페이지 사이에 복잡한 자바 스크립트 객체 (배열)를 전달할 수 있습니다. 이것은 시간 초과 세션에 대해 걱정할 필요가 없으며 하나의 솔루션에서 다음 솔루션으로 URL을 클릭 할 수있는 가치가 있습니다.

1

CFGRID를 시작하는 것은 좋지만 b * tch를 사용하여 사용자 정의하고 확장 할 수 있습니다 ... 바인드를 사용하여 편집 가능한 CFGRID를 사용해 보셨습니까? 그것이 당신이 원하는 것에서 얼마나 떨어져 있는지보십시오.아주 먼 것으로 밝혀지면 jqGrid로 가서 jQuery를 코딩 할 수 있습니다.

시작하려면 을 읽고 HTML 그리드을 사용하고 cfgrid를 편집 가능하게 만드십시오. 당신이 작업을 가지고 일단 http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-7a01.html#WSc3ff6d0ea77859461172e0811cbec22c24-72e0

, 당신은 여전히 ​​요구하는 경우가 cfgrid를

와 함께 사용할 수있는이 제공 JS 기능을보고 비트가 더 많으면 기본 ExtJS 구성 요소를 파헤쳐 야 할 수도 있습니다. 그 시점에서 jqGrid를 사용하려고합니다.

+0

cfgrid 대신 jquery에 +1을 추가하겠습니다. 제공된 자습서와 샘플을 넘어서 어느 정도까지 사용하면 머리카락을 뽑아내는 경험이됩니다. –

+0

좋아요. CFGRID 경로 대신 JQuery 경로를 사용한다고 가정 해 보겠습니다. 패스는 어떻게 수행합니까? –

관련 문제