Sto aggiungendo valori da elenchi di selezione (o sottrazione) e non riesco a farlo sembrare non concatenare la stringa.jQuery aggiunta di stringhe e non concatenazione
Il mio elenco di selezione è:
<li class="extraHeight">
<asp:Image runat="server" CssClass="iconImageMove" ID="Image13" ImageUrl="~/images/icons/ABabyChg_Off.png" />
<div class="flipWidth">
<select name="access" class="change" id="ABabyChg_Off" runat="server">
<option value="16777216">Off</option>
<option value="16777216">On</option>
</select>
</div> <br /> <p class="noWrap">Accessible baby changing facilities</p>
</li>
<li class="extraHeight">
<asp:Image runat="server" CssClass="iconImageMove" ID="Image14" ImageUrl="~/images/icons/carpark_off.png" />
<div class="flipWidth">
<select name="access" class="change" id="carpark_off" runat="server">
<option value="256">Off</option>
<option value="256">On</option>
</select>
</div> <br /> <p class="noWrap">Accessible Car parking facilities</p>
</li>
E il mio javascript è:
<script>
$("select").change(function() {
var currentAccess = "0";
var currentText = $(":selected", this).text();
var value = $(this).val()
alert(currentAccess);
if(currentText == "Off")
{
currentAccess -= value;
}
if(value != "0") {
if(currentText == "On")
{
currentAccess += value;
}
}
$.cookie("accessReqs", currentAccess, { expires: 24 });
alert(currentAccess);
})
</script>
Fondamentalmente sto cercando di avere currentAccess
avere il valore corrente come un intero e aggiungere e sottrarre così com'è necessario.
Tom
Alcuni considerano '* 1' (al posto di Number/parseInt) cattivo stile. – georg
@ thg435 ** [citazione necessaria] **. 'Number' è una funzione, e molto ** [più lento] (http://jsperf.com/number-vs-parseint-vs-plus/23) ** di un semplice' * 1'. –
Grazie per questo. Quando aggiungo il valore al cookie, quindi leggo il cookie di nuovo lo concatena di nuovo e lo perdono come valore. Ho provato parseInt ma non sembra fare molto – TMB87