- Posts: 10
- Thank you received: 0
Ask the community, share ideas, and connect with other LimeSurvey users!
<table id="dce_table"> </table> <script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:scriptcomplete',function(){ var myData = [ { "Version":"1","Task":"1","Concept":"1","Att1":"Banane","Att2":"5€","Att3":"27,56","Att4":"$$$","Att5":"50°C"}, { "Version":"1","Task":"1","Concept":"2","Att1":"Karotte","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"1","Task":"1","Concept":"3","Att1":"Vanilleeis","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"1","Task":"2","Concept":"1","Att1":"Birne","Att2":"5€","Att3":"27,56","Att4":"$$$","Att5":"50°C"}, { "Version":"1","Task":"2","Concept":"2","Att1":"Sellerie","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"1","Task":"2","Concept":"3","Att1":"Obstsalat","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"2","Task":"1","Concept":"1","Att1":"Apfel","Att2":"5€","Att3":"27,56","Att4":"$$$","Att5":"50°C"}, { "Version":"2","Task":"1","Concept":"2","Att1":"Gurke","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"2","Task":"1","Concept":"3","Att1":"Mousse au Chocolat","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"2","Task":"2","Concept":"1","Att1":"Blaubeeren","Att2":"5€","Att3":"27,56","Att4":"$$$","Att5":"50°C"}, { "Version":"2","Task":"2","Concept":"2","Att1":"Zucchini","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"}, { "Version":"2","Task":"2","Concept":"3","Att1":"Erdbeerjoghurt","Att2":"10€","Att3":"58,87","Att4":"€€€","Att5":"165°F"} ] // THIS IS WHAT I IMAGINED COULD WORK BUT IT DOESN'T: //var surveyID = 123456; //var filename = 'path/to/file/filename.txt'; //var myData = JSON.parse(filename); var attributes = ["Attribut 1", "Attribut 2", "Attribut 3","Attribut 4", "Attribut 5"]; var myTASK = "1"; var alternatives = ["Option 1","Option 2","Option 3"]; var myVERSION = "2"; // replace with random number (generated on earlier page) later on var h = 0; var f = 0; // Check number of columns to be created var col = ; col.push("Option"); for (var key in myData[0]) { if (key != "Version" && key != "Task" && key != "Concept") { col.push(key); } } col.push("Buttons"); var table = document.createElement("table"); var tr = table.insertRow(-1); // Create table headers for (var i = 0; i < col.length; i++) { if (i === 0) { var th = document.createElement("th"); th.innerHTML = "Option"; tr.appendChild(th); } else if (i < col.length-1) { var th = document.createElement("th"); th.innerHTML = attributes[i-1]; tr.appendChild(th); } else { var th = document.createElement("th"); th.innerHTML = "Auswahl"; tr.appendChild(th); } } // Create rows for (var i = 0; i < myData.length; i++) { if (myData[i]["Version"] === myVERSION && myData[i]["Task"] === myTASK) { tr = table.insertRow(-1); for (var j = 0; j < col.length; j++) { if (col[j] === "Buttons") { tr.insertCell(-1); } else if (j == 0) { var createLabel = tr.insertCell(-1); createLabel.innerHTML = alternatives[f]; f += 1; } else { var tabCell = tr.insertCell(-1); tabCell.innerHTML = myData[i][col[j]]; } } } } var divContainer = document.getElementById("dce_table"); divContainer.innerHTML = ""; divContainer.appendChild(table); });[/i][/i][/i]
[i][i][i]</script>[/i][/i][/i]
Please Log in to join the conversation.
Please Log in to join the conversation.
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/1.0.11/jquery.csv.min.js"></script> <script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:scriptcomplete',function(){ var url = "/upload/surveys/{SID}/files/file.csv"; var myData; $.get(url,function(data){ myData = $.csv.toObjects(data); }); alert(0); // This is the crucial point var attributes = ["Attribut 1", "Attribut 2", "Attribut 3","Attribut 4", "Attribut 5", "Attribut 6"]; // and so on
I getVersion,Task,Concept,Att1,Att2,Att3,Att4,Att5,Att6
1,1,1,Banane,5,27,56,$$$,50°C,btn
1,1,2,Karotte,6,27,56,$$$,50°C,btn
1,1,3,Vanille,7,27,56,$$$,50°C,btn
1,2,1,Birne,8,27,56,$$$,50°C,btn
Please Log in to join the conversation.
On my phone so I can't give an extensive answer but this may be caused by the loading time for jquery.csv from a CDN. Try loading that script from your server or using the jQuery getScript() function.You see the "alert(0)".
Without this it doesn't seem to work.
Please Log in to join the conversation.