2016-03-31 10 views
0

Farklı bir sayfada görüntülenecek sorgudan getirilen verileri almayı deniyorum, ancak veriler yeni sayfada görüntülenmiyor.Getirilen veriler yeni sayfada görüntülenmiyor (JavaScript/HTML)

Tablo, verilerle aynı sayfada görüntüleniyordu. Ancak, verileri yeni bir sayfada gösterecek şekilde değiştirmeye çalıştığımda, çalışmaz.

JQuery mobile kullanıyorum, bu yüzden bir sayfa yapısı (index.html altındaki tüm sayfalar) ve tüm javascript'im ayrı bir dosyada var.

Buradaki herkes sorununuzu görebilir mi?

getiriliyor veri fonksiyonu:

function fetchEvent() 
      { 
      db = window.openDatabase("SoccerEarth", "2.0", "SoccerEarthDB", 2*1024*1024); 
      db.transaction(foundEvent, errorCB); 
     } 

      function foundEvent(tx) 
      { 
      var TitleT = document.getElementById("texttitle").value; 
      tx.executeSql("SELECT * FROM SoccerEvents WHERE Title LIKE '%" + TitleT + "%'", [], renderEvent); 
         } 

function renderEvent(tx, response) { 
    /* var div = document.getElementById("responsediv"); */ 
    var temp = "<table border=\"1\"><tr><th>Title</th><th>Location</th><th>NoPeople</th><th>Date</th><th>Description</th></tr>"; 

    for (var i = 0; i < response.rows.length; i++) { 
     temp += "<tr><td>" + response.rows.item(i).Title + "</td><td>" + response.rows.item(i).Location + "</td><td>" + response.rows.item(i).NoPeople + "</td><td>" + response.rows.item(i).Date + "</td><td>" + response.rows.item(i).Description + "</td></tr>"; 
     /* div.innerHTML = temp; */ 
    } 
    var page6 = window.open("#page20", "mywin", ''); 
    page6. dataFromParent = temp; 
    page6.render(); 
} 
    var dataFromParent; 
    function render() { 
     $('datadisplay').innerHTML(dataFromParent); 
    } 

HTML (sayfa 6):

Tamam
<div data-role="page" id="page20" data-theme="d"> 

    <div data-role="content"> 
     <div id="datadisplay"> 
     </div> 
    </div> 
</div> 
+0

jquery => '$ ('# datadisplay')' kullanarak kimliğine göre bir öğe seçmek için '' 'seçeneğine de ihtiyacınız vardır; ayrıca' render() 'ifadesi alınmadan önce' dataFromParent' sorgunuzdan hemen önce sorgunun yeterince dolduğundan emin olun. –

+0

Öğe dizisini responsediv'den datadisplay'e değiştirdim, ancak değişiklik yok. Başka sorunları görüyor musunuz? – Mahdi

+0

günlüğü veya uyarı (dataFromParent) içinde render render() bir şey alıp almadığınızı görmek için –

cevap

1
for (var i = 0; i < response.rows.length; i++) { 
     temp += "<tr><td>" + response.rows.item(i).Title + "</td><td>" + response.rows.item(i).Location + "</td><td>" + response.rows.item(i).NoPeople + "</td><td>" + response.rows.item(i).Date + "</td><td>" + response.rows.item(i).Description + "</td></tr>"; 
     /* div.innerHTML = temp; */ 
    } 

, Yani u istediğiniz verileri göstermek için farklı bir sayfa u başka bir sayfaya geçmek Verileriniz olan yanıt nesnesi kayboluyor. Yepyeni bir sayfa hazırlamanızı öneririm. Bu satırdaki bir şey.

var formElements = "<table id='resulttable' data-role='table' data-mode='reflow' class='ui-responsive table-stroke table-stripe'><thead><tr><th>Title</th><th>Location</th><th>NoPeople</th><th>Date</th><th>Description</th></tr></thead><tbody>"; 
         for (var i = 0; i < response.rows.length; i++) { 
          formElements += "<tr><td>" + response.rows.item(i).Title + "</td><td>" + response.rows.item(i).Location +"</td><td>" + response.rows.item(i).NoPeople + "</td><td>" + response.rows.item(i).Date +"</td><td>" + response.rows.item(i).Description + "<a href='map.html' rel='external' data-ajax='false' data-role='button' data-mini='true'>View on Map</a></td></tr>"; 
         } 

       formElements+="</tbody></table>"; 
       $('#page_body').append('<div data-role="page" data-theme="d" id="' + page_id + '"><div data-role="content">' + formElements + '<a href="#page4" data-role="button" data-mini="true">Return</a></div></div>'); 
       $.mobile.initializePage(); 
       $.mobile.changePage("#" + page_id); 

page_id u Şimdi

ayarlayabilirsiniz Eğer you.But mantığına göre birkaç özelleştirme yapmak gerekebilir sıfırdan tüm bütün bir div yapıyoruz dinamik sayfanın belirli id ve onu eklemek. Şimdi, BACK işlevselliği için mantığınız olan navigasyon ve BACK mantığınız olan bir FORWARD() işlevi yazmanız gerekiyor. Umut eder.

+0

Bu arkadaş için teşekkürler. Benim JavaScript bilgim çok büyük değil, bu yüzden yukarıdaki her şeyi bir araya getirmek için masa olmam için biraz mantıklı ama yeterli değil. Eğer müsaitse jsfiddle yapabilir miyiz? – Mahdi

+0

Tamam, ben stackoverflkow için yeni ve JS fiddle ile hiç çalışmadım. Ama kesinlikle yardım etmeye çalışacağım. – IamKarim1992

+0

Skype'ınız var mı? – Mahdi