»
Tiếng AnhTiếng PhápTiếng Việt

In - Cập nhật form mà không cần refresh - JavaScriptBank.com

Phiên bản đầy đủ: jsB@nk » Biểu mẫu » Hạn chế » Cập nhật form mà không cần refresh
URL: https://www.javascriptbank.com/update-order-form-wo-page-refresh.html

Cập nhật form mà không cần refresh © JavaScriptBank.comHiệu ứng JavaScript này dùng để cập nhật tổng giá tiền trên một biểu mẫu thanh toán mà không cần phải refresh lại cả trang web.

Phiên bản đầy đủ: jsB@nk » Biểu mẫu » Hạn chế » Cập nhật form mà không cần refresh
URL: https://www.javascriptbank.com/update-order-form-wo-page-refresh.html



JavaScript
<script type="text/javascript">/* This script and many more are available free online atThe JavaScript Source :: http://javascript.internet.comCreated by: Kevin Hartig :: http://www.grafikfx.net/ */// Calculate the total for items in the form which are selected.function calculateTotal(inputItem) {  with (inputItem.form) {    // Process each of the different input types in the form.    if (inputItem.type == "radio") {   // Process radio buttons.      // Subtract the previously selected radio button value from the total.      calculatedTotal.value = eval(calculatedTotal.value) - eval(previouslySelectedRadioButton.value);      // Save the current radio selection value.      previouslySelectedRadioButton.value = eval(inputItem.value);      // Add the current radio button selection value to the total.      calculatedTotal.value = eval(calculatedTotal.value) + eval(inputItem.value);    } else {   // Process check boxes.      if (inputItem.checked == false) {   // Item was uncheck. Subtract item value from total.          calculatedTotal.value = eval(calculatedTotal.value) - eval(inputItem.value);      } else {   // Item was checked. Add the item value to the total.          calculatedTotal.value = eval(calculatedTotal.value) + eval(inputItem.value);      }    }    // Total value should never be less than 0.    if (calculatedTotal.value < 0) {      InitForm();    }    // Return total value.    return(formatCurrency(calculatedTotal.value));  }}// Format a value as currency.function formatCurrency(num) {  num = num.toString().replace(/\$|\,/g,'');  if(isNaN(num))     num = "0";  sign = (num == (num = Math.abs(num)));  num = Math.floor(num*100+0.50000000001);  cents = num%100;  num = Math.floor(num/100).toString();  if(cents<10)      cents = "0" + cents;  for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)      num = num.substring(0,num.length-(4*i+3)) + ',' + num.substring(num.length-(4*i+3));  return (((sign)?'':'-') + '$' + num + '.' + cents);}// This function initialzes all the form elements to default values.function InitForm() {  // Reset values on form.  document.selectionForm.total.value='$0';  document.selectionForm.calculatedTotal.value=0;  document.selectionForm.previouslySelectedRadioButton.value=0;  // Set all checkboxes and radio buttons on form to unchecked.  for (i=0; i < document.selectionForm.elements.length; i++) {    if (document.selectionForm.elements[i].type == 'checkbox' | document.selectionForm.elements[i].type == 'radio') {      document.selectionForm.elements[i].checked = false;    }  }}</script><!--    This script downloaded from www.JavaScriptBank.com    Come to view and download over 2000+ free javascript at www.JavaScriptBank.com-->


HTML
<body onload="InitForm();" onreset="InitForm();"><table><tr><td>  <form method="POST" name="selectionForm">    <b>Pizza Order</b><br>    Small $10.00    <input type="checkbox" name="Steak"   value="10.00"  onclick="this.form.total.value=calculateTotal(this);">      Medium $12.00    <input type="checkbox" name="Chicken" value="12.00" onclick="this.form.total.value=calculateTotal(this);">      Large $15.00    <input type="checkbox" name="Sushi"   value="15.00"  onclick="this.form.total.value=calculateTotal(this);">    <br><br>    <b>Extra Toppings (only one selection allowed):</b> <br>      <input type="radio" name="Sauce" value="0.00" onclick="this.form.total.value=calculateTotal(this);"> None    <br>      <input name="Sauce" type="radio"  value="1.00" onclick="this.form.total.value=calculateTotal(this);"> Extra Cheese $1.00    <br>      <input type="radio" name="Sauce" value="2.00" onclick="this.form.total.value=calculateTotal(this);"> Vegetarian $2.00    <br>      <input type="radio" name="Sauce" value="3.00" onclick="this.form.total.value=calculateTotal(this);"> Meat $3.00    <br>    <br>    <input type="hidden" name="calculatedTotal" value="0">    <input type="hidden" name="previouslySelectedRadioButton" value="0">    <strong>Your total is:</strong>    <input type="text" name="total" readonly onfocus="this.blur();">  </form></td></tr></table></body><!--    This script downloaded from www.JavaScriptBank.com    Come to view and download over 2000+ free javascript at www.JavaScriptBank.com-->