Sto usando jQuery per effettuare chiamate ajax - molte delle quali funzionano bene, ma ho appena incontrato un problema strano nel tentativo di inviare una stringa al server. Ho ristretto il codice fino a solo questo:L'oggetto stringa JavaScript viene diviso in un array su jQuery.post
var x = new String('updateGroup');
var y = 'updateGroup';
$.post('page.aspx', {
f: x,
f2: y
}, function(data) {
});
Quando colpisce il server tuttavia, le variabili di richiesta sono i seguenti:
Request["f"] null string
Request["f2"] "updateGroup" string
Request.Form.AllKeys {string[12]} string[]
[0] "f[0]" string
[1] "f[1]" string
[2] "f[2]" string
[3] "f[3]" string
[4] "f[4]" string
[5] "f[5]" string
[6] "f[6]" string
[7] "f[7]" string
[8] "f[8]" string
[9] "f[9]" string
[10] "f[10]" string
[11] "f2" string
dove Request["f[0]"]
contiene "u"
ecc
Can qualcuno spiega perché succede?
Grazie - ha un senso. Ho aggiunto un .toString e .valueOf ed entrambi sembrano aggirare il problema. Mi sembra strano che Jquery tratti gli oggetti a corda in questo modo - mi sembra poco intuitivo. –
L'oggetto String è un po 'una reliquia arcaica, ha metodi come big, bold, blink, fontsize, fontcolor etc. ti dà una buona idea della sua età ;-) – oodavid