Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

Παιδεύομαι λίγο καιρό τώρα να αποθηκεύσω/σώσω κάπως κάποιες μεταβλητές από js. Αυτές είναι μία λίστα και ένα html element που διαβάζω με document.getElementById. Παράδειγμα αυτά που είναι μέσα στο code block. Ο μόνος τρόπος που βρήκα είναι με copy - paste  😞

<p style="width:100ch; text-align: justify" id="papa">Θανάσιμα <input style="width: 15ch;" id="1">στην προσπάθειά του να ληστέψει ένα κοσμηματοπωλείο στην Ομόνοια, ο γνωστός ακτιβιστής της ΛΟΑΤΚΙ κοινότητας Ζακ Κωστόπουλος, σύμφωνα με το protothema.<br><br>Ο άνδρας εισέβαλε εχθές το <input style="width: 10ch;" id="0">στο κατάστημα χρυσαφικών του <input style="width: 9ch;" id="2">κρατώντας στο χέρι ένα μαχαίρι για να το ληστέψει, φαίνεται να εγκλωβίζεται και στη συνέχεια στην προσπάθεια του να ξεφύγει, αρχικά αρπάζει έναν πυροσβεστήρα και <input style="width: 5ch;" id="6">συνέχεια αφού ανεπιτυχώς δεν μπορεί να βγει, σπάει τη βιτρίνα και “βουτάει” μέσα από τα τζάμια στο δρόμο. Όπως φαίνεται διερχόμενοι περαστικοί του <input style="width: 13ch;" id="7">και ο ληστής <input style="width: 16ch;" id="3">από τα τζάμια, αφήνει λίγα λεπτά αργότερα την τελευταία του πνοή.<br><br>Η αστυνομία προχώρησε στη σύλληψή του κοσμηματοπώλη, βάσει ενός βίντεο  που δείχνει τον ίδιο, μαζί με ένα άγνωστο, να κλωτσούν τον τοξικομανή, όταν εκείνος είχε εγκλωβιστεί στο κοσμηματοπωλείο. <br><br>Ο ιδιοκτήτης του <input style="width: 18ch;" id="4">οδηγείται στον εισαγγελέα με την κατηγορία της βαριάς σκοπούμενη βλάβης, ενώ αναζητείται από την αστυνομία το δεύτερο άτομο που φαίνεται στο <input style="width: 8ch;" id="5">να κλωτσάει τον τοξικομανή.<br> </p>

selectet_words
Array(8) [ "μεσημέρι", "τραυματίστηκε", "κέντρου", "τραυματισμένος", "κοσμηματοπωλείου", "βίντεο", "στη", "επιτίθενται" ]

Καμία ιδέα;

 

Επεξ/σία από k33theod
Δημοσ.

Η ιδέα είναι να παράγω ασκήσεις αυτές με τα κενά. Βρήκα βολική τη js και προσπάθησα με αυτή. Παίρνω ένα κείμενο αφαιρώ κάπειες λέξεις τμήματα κλπ και ο άλλος προσπαθεί να τα συμπληρώσει. Θέλω να σώσω το κείμενο και τον πίνακα λέξεων. Ο κώδικας όλος είναι εδώ  https://github.com/k33theod/exercise_creator

Αυτό με τα id δεν το ήξερα. Τους έδινα id το index της λέξης που κόβω. Προσπάθησα να ανεβάσω και ένα βίντεο αλλά τώρα κάτι λέει για 2mb limit

Δημοσ.

Όταν λες να το αποθηκεύσεις, για τι χρήση? το localStorage δεν σε καλύπτει? Αν θες να γίνουν persist με άλλο τρόπο και δεν μιλάμε για server side JS, θα πρέπει να τα στείλεις με κάποιου είδους http request να αποθηκευτούν σε κάποιο αρχείο ή βάση. 

Δημοσ.

Τι πάει να πει "παίρνεις ένα κείμενο"; Από πού το παίρνεις; Πώς μεταφέρεται στη σελίδα που δουλεύεις; Και τι εννοείς "να το σώσεις"; Τι ακριβώς να σώσεις από τη στιγμή που μπορείς απλά να επαναλάβεις την ίδια διαδικασία με πριν;

Δημοσ. (επεξεργασμένο)
1 ώρα πριν, defacer είπε

Τι πάει να πει "παίρνεις ένα κείμενο"; Από πού το παίρνεις; Πώς μεταφέρεται στη σελίδα που δουλεύεις; Και τι εννοείς "να το σώσεις"; Τι ακριβώς να σώσεις από τη στιγμή που μπορείς απλά να επαναλάβεις την ίδια διαδικασία με πριν;

Έχω ανεβάσει ένα βίντεο https://github.com/k33theod/exercise_creator/blob/master/ScreenCapture_22-Sep-18 17.22.42.wmv

που δείχνει πώς κάνω αυτές ασκήσεις και η ιδέα είναι να κρατήσω το  element και τη λίστα για να τα χρησιμοποιώ όποτε θέλω.

1 ώρα πριν, alou είπε

Όταν λες να το αποθηκεύσεις, για τι χρήση? το localStorage δεν σε καλύπτει? Αν θες να γίνουν persist με άλλο τρόπο και δεν μιλάμε για server side JS, θα πρέπει να τα στείλεις με κάποιου είδους http request να αποθηκευτούν σε κάποιο αρχείο ή βάση. 

Η local storage όχι θα προτιμούσα να πήγαινε στο server. Αυτό που λες να τα στείλω με request προσπάθησα αλλά δεν μου βγήκε. Προσπάθησα επίσης να χρησιμοποιήσω τις export import της js για να τα περάσω σε άλλο js αρχείο, αλλά δεν

Επεξ/σία από k33theod
Δημοσ. (επεξεργασμένο)
4 minutes ago, k33theod said:

η ιδέα είναι να κρατήσω το  element και τη λίστα για να τα χρησιμοποιώ όποτε θέλω

Σώζεις κάπου το κείμενο και τα indexes μέσα σε αυτό (σε ποιο χαρακτήρα ξεκινούν και σταματάνε) οι λέξεις που θες να κάνεις λίστα, και αυτή είναι όλη η πληροφορία που σου χρειάζεται.

Επεξ/σία από defacer
Δημοσ.
15 λεπτά πριν, defacer είπε

Σώζεις κάπου το κείμενο και τα indexes μέσα σε αυτό (σε ποιο χαρακτήρα ξεκινούν και σταματάνε) οι λέξεις που θες να κάνεις λίστα, και αυτή είναι όλη η πληροφορία που σου χρειάζεται.

Αυτή ακριβώς είναι η αρχική μου ερώτηση πως τα σώζω το κείμενο είναι το var keimeno = document.getElementById("tade") και οι λέξεις είναι var selected_words.

Τα index δεν τα χρειάζομαι γιατί έχω αντιστοιχεία λέξης, κενό. Η λέξη με index στη λίστα 10 δηλαδή αντιστοιχεί στο κενό με id 10.

 

Δημοσ.

Καταρχάς, πρόσβαση στο filesystem από τον browser μέσω javascript δεν υπάρχει. Αν θες να αποθηκεύσεις κάτι, θα χρησιμοποιήσεις π.χ. fetch και θα τα πάρει ο server να τα αποθηκεύσει σε ένα αρχείο ή στη βάση. 

 

Οπότε, στη δική σου περίπτωση, αλλάζοντας λίγο το παράδειγμα απο MDN στο παραπάνω link:

let data = {text: mySelectedText, words: selected_words};

postData(`http://example.com/answer`, data)
  .then(data => {
		// data edo einai oti epistrepseis apo ton server san apantisi
		console.log('succesfully sent data to server'))
	}
  .catch(error => console.error(error));

function postData(url = ``, data = {}) {
  // Default options are marked with *
    return fetch(url, {
        method: "POST", // *GET, POST, PUT, DELETE, etc.
        mode: "cors", // no-cors, cors, *same-origin
        cache: "no-cache", // *default, no-cache, reload, force-cache, only-if-cached
        credentials: "same-origin", // include, same-origin, *omit
        headers: {
            "Content-Type": "application/json; charset=utf-8",
            // "Content-Type": "application/x-www-form-urlencoded",
        },
        redirect: "follow", // manual, *follow, error
        referrer: "no-referrer", // no-referrer, *client
        body: JSON.stringify(data), // body data type must match "Content-Type" header
    })
    .then(response => return response.json()); // parses response to JSON

 

και προφανώς, έχεις κάνει κάτι server side που θα πάρεις το ποστ και θα κάνεις ότι χρειάζεται. Αν δεν την παλεύεις εκεί, πες μια γενική κατεύθυνση σε περιβάλλον που θες να δούμε τι μπορεί να βοηθήσει.

 

Δημοσ. (επεξεργασμένο)
21 ώρες πριν, alou είπε

Καταρχάς, πρόσβαση στο filesystem από τον browser μέσω javascript δεν υπάρχει. Αν θες να αποθηκεύσεις κάτι, θα χρησιμοποιήσεις π.χ. fetch και θα τα πάρει ο server να τα αποθηκεύσει σε ένα αρχείο ή στη βάση. 

Οπότε, στη δική σου περίπτωση, αλλάζοντας λίγο το παράδειγμα απο MDN στο παραπάνω link:

και προφανώς, έχεις κάνει κάτι server side που θα πάρεις το ποστ και θα κάνεις ότι χρειάζεται. Αν δεν την παλεύεις εκεί, πες μια γενική κατεύθυνση σε περιβάλλον που θες να δούμε τι μπορεί να βοηθήσει.

Ευχαριστώ φίλε. Το προσπάθησα αλλά δεν μου δουλεύει βγάζει ένα πρόβλημα με το json, και βασικά δεν θέλω json, με βολεύει καλύτερα να πάει ως DOM Object  ή string. Μπόρεσα με ajax να στείλω τη λίστα των λέξεων xhttp.send('words='+ encodeURIComponent(selectet_words));

O mozilla έχει καλό documentation. Θέλει λίγο ψάξιμο για να στείλω και το άλλο κομμάτι. Τα περισσότερα παραδείγματα είναι για να πάρεις data 😞

 

Επεξ/σία από k33theod

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...