Hi semua, saya mau tanya mengenai jqGrid. Saya mempunyai masalah ketika ingin 
mengisi data pada jqGrid dengan menggunakan XML. Di bawah ini adalah syntax 
struktrur tabel jqGrid yang berada pada file application.js. url dari file XML 
tersebut berada pada variabel scheduleUrl, yang digenerate oleh javascript yang 
berada pada view.

$(document).ready(function() {
    jQuery("#lectures").jqGrid({        
        datatype: "xml",
        url: scheduleUrl,
        height: 250,
        colNames:['Lecture Number', 'Dates', 'Topics', 'Readings'],
        colModel:[
            {name:'lecture_number',index:'lecture_number', width:100, 
sorttype:"int"},
            {name:'lecture_dates',index:'lecture_dates', width:80, 
sorttype:"date"},            
            {name:'topics',index:'topics', width:250, 
align:"left",sorttype:"text"},
            {name:'readings',index:'readings', width:250, 
align:"left",sorttype:"text"},
        ],
        multiselect: true,
        caption: "Lecture Schedule"
    });    
})

Untuk controller, isinya sebagai berikut :
  def index
    @course = Course.find( params[:course_id] )
    @lectures = @course.lectures.sort_by { |l| l.lecture_number }
    respond_to do |format|
      format.html # index.html.erb
      format.xml  { render :xml => @lectures }
      format.xml  { render :partial => "index.xml.builder", :layout => false }
      format.json { render :json => Lecture.to_json( @lectures )}
    end
  end

Sedangkan isi file _index.xml.builder adalah sebagai berikut:
xml.instruct! :xml, :version=>"1.0", :encoding=>"UTF-8"
xml.rows do
  xml.page 1
  xml.total 1
  xml.records @lectures.size
  @lectures.each do |u|
    xml.row :id => u.id do
      xml.cell u.lecture_number
      xml.cell
      xml.cell u.topics
      xml.cell u.readings
    end
  end
end

Kemudian pada file index.html.erb, saya ingin menampilkan tabel tersebut. 
Sebelum menampilkan tabel, variabel scheduleUrl akan berisi URL pada saat itu, 
ditambah dengan extension .xml.

<script>
  var scheduleUrl = "<%= course_lectures_path @course %>.xml";
</script>
<table id="lectures"></table>


Ketika page berhasil di-load, yang muncul adalah tabel kosong dengan format

Lecture Schedule
 
Lecture Number
 
Dates
 
Topics
 
Readings
Data pada file XML tidak nampak, tetapi ketika saya lihat dengan menggunakan 
Firebug, pada bagian console terdapat


<?xml version="1.0" encoding="UTF-8"?>
<lectures type="array">
  <lecture>
    <course-id type="integer">40</course-id>
    <id type="integer">603</id>
    <lecture-number type="integer">1</lecture-number>
    <readings>&lt;ul&gt;
&lt;li&gt;Syllabus (&lt;a href="... URL ..."&gt;Handout&lt;/a&gt; 1)&lt;/li&gt;
&lt;/ul&gt;</readings>
    <topics>&lt;ul&gt;
&lt;li&gt;Course introduction&lt;/li&gt;
&lt;/ul&gt;</topics>
  </lecture>
  <lecture>
    <course-id type="integer">40</course-id>
    <id type="integer">601</id>
    <lecture-number type="integer">2</lecture-number>
    <readings>&lt;ul&gt;
&lt;li&gt;Horstmann, Chapter 1&lt;/li&gt;&lt;li&gt;&lt;a href="... URL 
..."&gt;Lecture notes&lt;/a&gt; set 01&lt;/li&gt;
&lt;/ul&gt;</readings>
    <topics>&lt;ul&gt;
&lt;li&gt;Introduction to programming&lt;/li&gt;
&lt;/ul&gt;</topics>
  </lecture>
............
...........
</lectures>
Kemungkinan file XML tersebut sudah didownload oleh browser, namun ketika 
menampilkan ke jqGrid terdapat masalah. Ada yang bisa bantu ?

Best regards,

Robin


      

[Non-text portions of this message have been removed]

Kirim email ke