Ich kämpfe, um zu bekommen, was ich denke, sollte ein einfaches bisschen jquery/javascript sein, um zu arbeiten. Ich habe eine Textbox und zwei Radios bekam wie so, dass ich will, automatisch die ‚total‘ Textbox aktualisieren, wenn ein Benutzer ihre Werte ändert:Wie man ein "totales" Textfeld von den Werten in einem anderen Textfeld und Radios mit Jquery aktualisiert
<tr>
<td>Value:</td>
<td>
<input name="value" type="text" id="value" />
</td>
</tr>
<tr>
<td>Postage:</td>
<td>
<input id="express" type="radio" name="postageradio" value="PostageExpressRadio" />
Express post ($3.50)
<input id="registered" type="radio" name="postageradio" value="PostageRegisteredRadio" />
Registered post ($5.00)
</td>
</tr>
<tr>
<td>Total:</td>
<td colspan="2">
<input name="total" type="text" readonly="readonly" id="total" />
</td>
</tr>
Hier ist das Bit von jquery ich habe kommen mit, die doesn Funktioniert in Chrome nicht sehr gut (es ist langsam zu aktualisieren) und funktioniert in IE überhaupt nicht mit den Radios. Ich bin mir sicher, dass es einen besseren Weg dafür gibt, daher sind alle Vorschläge willkommen.
function calctotal() {
var value = $('#value').val();
var amount = parseInt(value.replace(' ', '').replace('$', ''));
if (isNaN(amount)) amount = 0;
var post = 0;
if ($('#express').is(':checked')) post = 3.5;
if ($('#registered').is(':checked')) post = 5.0;
$('#total').val('$' + (amount + post).toFixed(2));
}
// The timeout is used because otherwise the 'change' events get the previous value (???)
function calctotalsoon() {
setTimeout(function() {
calctotal();
}, 100);
}
$(document).ready(function() {
$('#value').keyup(function(event) {
calctotalsoon();
});
$('#express').change(function(event) {
calctotalsoon();
});
$('#registered').change(function(event) {
calctotalsoon();
});
});
Vielen Dank
scheint für mich in Chrome und IE8 gut zu funktionieren. Welche Version von jQuery verwenden Sie? –
Einige weitere Details darüber gefunden, warum die Funkgeräte nicht im IE auslösen: http://norman.walsh.name/2009/03/24/jQueryIE – Chris
Verwenden von IE9 und Jquery 1.4.1 – Chris