/ / Ako môžem získať prvok poľa z poľa v hodnote prvku formulára? - javascript, php, jquery, formuláre

Ako môžem získať prvok poľa z poľa v hodnote elementu formulára? - javascript, php, jquery, formuláre

Mám html formulárový prvok s nastavenou hodnotou akopole. Chcem dostať jednu z týchto hodnôt z poľa pomocou jQuery. Ako sa to deje? Tu je môj kód. Možno to môže hovoriť samo za seba, ak moje vysvetlenie nebolo jasné. Ďakujem!

    var lat = 0;
var long = 0;

//gets the latitude and longitude when a user clicks on any place on the map

map.on("click", function(e) {
lat = e.latlng.lat;
long = e.latlng.lng;

//store the lat and long in an array

var latlong = [lat, long];

//here I am setting the value of my an element in my form as the array of lat and long

document.getElement(".<?= $this->getName() ?>").set("value", latlong);
var getLatlong = jQuery(".<?= $this->getName() ?>").val();
console.log("retrieved: " + getLatlong);

//it saves and retrieves properly.

//THE PROBLEM IS HERE
//THE PROBLEM IS HERE
var lat = $(".<?= $this->getName() ?>").val()[0];
var long = $(".<?= $this->getName() ?>").val()[1];
//THE PROBLEM IS HERE
//THE PROBLEM IS HERE


});

To všetko funguje dobre, ale nechápem, čo chcem. Ak sa pokúsim použiť niektorý z riadkov kódu uvedených nižšie

    //THE PROBLEM IS HERE
var lat = $(".<?= $this->getName() ?>").val()[0];    //returns 9
var long = $(".<?= $this->getName() ?>").val()[1];   //returns 4
var long = $(".<?= $this->getName() ?>").val()[3];   //returns 2
var long = $(".<?= $this->getName() ?>").val()[4];   //returns 3
//THE PROBLEM IS HERE

získať buď zemepisnú šírku alebo dĺžku "tj: 94,2323, 12,9932"

The index [0] returns 9,
the index [1] returns 4,
the index [3] returns 2

akoby 94.2323 bolo pole namiesto lat a dlhé ako pole. Chcem [0] vrátiť 94,2323 a [1] vrátiť 12,9932.

Snažil som sa to vysvetliť a naformátovať túto otázku najlepšie, ako som vedel. Ďakujem.

odpovede:

1 pre odpoveď č. 1

Môžeš použiť JSON.stringify() konvertovať Array na JSON formát

document.getElement(".<?= $this->getName() ?>")
.set("value", JSON.stringify(latlong));

JSON.parse() konvertovať JSON vo formáte String na Array

var getLatlong = JSON.parse(jQuery(".<?= $this->getName() ?>").val());
console.log(getLatlong[0], getLatlong[1]); // do stuff