无线电 Buttons/Textbox 计算:Deselect/Recalculate 如果用户改变主意 (Javascript/jquery/php)
Radio Buttons/Textbox Calculation: Deselect/Recalculate if User Changes Mind (Javascript/jquery/php)
我有一个 php 网络表单需要帮助。
这部分表格使用 javascript。选中选项旁边的单选按钮会将费用填充到相应的文本框中,这些文本框的值将在总计文本框中计算。
用户只能 select 一种语言,价格为 75 美元。他们还可以选择以 275 美元的价格 select 该语言的相应学分。
如果一个人 select 只有一个信用选项,我希望相应的语言按钮也 select,并且两种费用都应出现在适当的框中并在总计中正确计算。
如果一个人改变了主意,并且 select 使用了不同的语言,那么他们以前 selection 的其他单选按钮应该 deselect 和相应的费用文本框应清除。这是我遇到麻烦的地方。当我更改 selection 时,表格并不总是清除前一个 selection 的小计文本框,它会继续在总计中添加前一个 selection 的费用. (表格的总计不得超过 307 美元。)
我不是专家编码员,我承认我使用的代码不是最current/efficient。自从原来的javascript写成这种形式后,jquery和php就成了主导。这种形式混合使用了老式 javascript、jquery 和 php。我欢迎所有可能的解决方案来完成这项任务。
因此,我向这个社区发出呼吁,感谢大家花时间帮助我学习。
function total()
{
var total=0;
var reg=0;
if (window.document.registration.dutch_EENCx075_27745.checked) {
reg=reg+75; window.document.registration.dutch_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.dutch_EENCx075_27745_subtotal.value = ""; }
if (window.document.registration.dutch_WLC110_27750.checked) {
window.document.registration.dutch_EENCx075_27745.checked = true;
reg=reg+232; window.document.registration.dutch_WLC110_27750_subtotal.value=232;
reg=reg+75; window.document.registration.dutch_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.dutch_WLC110_27750_subtotal.value = "";}
if (window.document.registration.esl_EENCx075_27745.checked) {
reg=reg+75; window.document.registration.esl_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.esl_EENCx075_27745_subtotal.value = ""; }
if (window.document.registration.esl_WLC110_27751.checked) {
window.document.registration.esl_EENCx075_27745.checked = true;
reg=reg+232; window.document.registration.esl_WLC110_27751_subtotal.value=232;
reg=reg+75; window.document.registration.esl_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.esl_WLC110_27751_subtotal.value = ""; }
total = total + reg;
window.document.registration.amount1.value=total.toFixed(2);
}
这有效,只需将 1、2、3、4 添加到 onClick() 中,就像这样 onClick(1)。我还更新了你的 jsfiddle http://jsfiddle.net/9rqofbsc/
function total(button) {
if (button == 1) {
$("#dutch_EENCx075_27745").prop("checked", true);
$("#dutch_WLC110_27750").prop("checked", false);
$("#esl_EENCx075_27745").prop("checked", false);
$("#esl_WLC110_27751").prop("checked", false);
}
if(button == 2) {
$("#dutch_EENCx075_27745").prop("checked", true);
$("#dutch_WLC110_27750").prop("checked", true);
$("#esl_EENCx075_27745").prop("checked", false);
$("#esl_WLC110_27751").prop("checked", false);
}
if(button == 3) {
$("#dutch_EENCx075_27745").prop("checked", false);
$("#dutch_WLC110_27750").prop("checked", false);
$("#esl_EENCx075_27745").prop("checked", true);
$("#esl_WLC110_27751").prop("checked", false);
}
if(button == 4) {
$("#dutch_EENCx075_27745").prop("checked", false);
$("#dutch_WLC110_27750").prop("checked", false);
$("#esl_EENCx075_27745").prop("checked", true);
$("#esl_WLC110_27751").prop("checked", true);
}
var total = 0;
var reg = 0;
if ($('#dutch_EENCx075_27745').is(':checked')) {
reg = reg + 75;
window.document.registration.dutch_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.dutch_EENCx075_27745_subtotal.value = "";
}
if ($('#dutch_WLC110_27750').is(':checked')) {
reg = reg + 232;
window.document.registration.dutch_WLC110_27750_subtotal.value = 232;
reg = reg + 75;
window.document.registration.dutch_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.dutch_WLC110_27750_subtotal.value = "";
}
if ($('#esl_EENCx075_27745').is(':checked')) {
reg = reg + 75;
window.document.registration.esl_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.esl_EENCx075_27745_subtotal.value = "";
}
if ($('#esl_WLC110_27751').is(':checked')) {
reg = reg + 232;
window.document.registration.esl_WLC110_27751_subtotal.value = 232;
reg = reg + 75;
window.document.registration.esl_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.esl_WLC110_27751_subtotal.value = "";
}
total = total + reg;
window.document.registration.amount1.value = total.toFixed(2); //display the grand total.
}
我有一个 php 网络表单需要帮助。
这部分表格使用 javascript。选中选项旁边的单选按钮会将费用填充到相应的文本框中,这些文本框的值将在总计文本框中计算。
用户只能 select 一种语言,价格为 75 美元。他们还可以选择以 275 美元的价格 select 该语言的相应学分。
如果一个人 select 只有一个信用选项,我希望相应的语言按钮也 select,并且两种费用都应出现在适当的框中并在总计中正确计算。
如果一个人改变了主意,并且 select 使用了不同的语言,那么他们以前 selection 的其他单选按钮应该 deselect 和相应的费用文本框应清除。这是我遇到麻烦的地方。当我更改 selection 时,表格并不总是清除前一个 selection 的小计文本框,它会继续在总计中添加前一个 selection 的费用. (表格的总计不得超过 307 美元。)
我不是专家编码员,我承认我使用的代码不是最current/efficient。自从原来的javascript写成这种形式后,jquery和php就成了主导。这种形式混合使用了老式 javascript、jquery 和 php。我欢迎所有可能的解决方案来完成这项任务。
因此,我向这个社区发出呼吁,感谢大家花时间帮助我学习。
function total()
{
var total=0;
var reg=0;
if (window.document.registration.dutch_EENCx075_27745.checked) {
reg=reg+75; window.document.registration.dutch_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.dutch_EENCx075_27745_subtotal.value = ""; }
if (window.document.registration.dutch_WLC110_27750.checked) {
window.document.registration.dutch_EENCx075_27745.checked = true;
reg=reg+232; window.document.registration.dutch_WLC110_27750_subtotal.value=232;
reg=reg+75; window.document.registration.dutch_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.dutch_WLC110_27750_subtotal.value = "";}
if (window.document.registration.esl_EENCx075_27745.checked) {
reg=reg+75; window.document.registration.esl_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.esl_EENCx075_27745_subtotal.value = ""; }
if (window.document.registration.esl_WLC110_27751.checked) {
window.document.registration.esl_EENCx075_27745.checked = true;
reg=reg+232; window.document.registration.esl_WLC110_27751_subtotal.value=232;
reg=reg+75; window.document.registration.esl_EENCx075_27745_subtotal.value=75;
} else {window.document.registration.esl_WLC110_27751_subtotal.value = ""; }
total = total + reg;
window.document.registration.amount1.value=total.toFixed(2);
}
这有效,只需将 1、2、3、4 添加到 onClick() 中,就像这样 onClick(1)。我还更新了你的 jsfiddle http://jsfiddle.net/9rqofbsc/
function total(button) {
if (button == 1) {
$("#dutch_EENCx075_27745").prop("checked", true);
$("#dutch_WLC110_27750").prop("checked", false);
$("#esl_EENCx075_27745").prop("checked", false);
$("#esl_WLC110_27751").prop("checked", false);
}
if(button == 2) {
$("#dutch_EENCx075_27745").prop("checked", true);
$("#dutch_WLC110_27750").prop("checked", true);
$("#esl_EENCx075_27745").prop("checked", false);
$("#esl_WLC110_27751").prop("checked", false);
}
if(button == 3) {
$("#dutch_EENCx075_27745").prop("checked", false);
$("#dutch_WLC110_27750").prop("checked", false);
$("#esl_EENCx075_27745").prop("checked", true);
$("#esl_WLC110_27751").prop("checked", false);
}
if(button == 4) {
$("#dutch_EENCx075_27745").prop("checked", false);
$("#dutch_WLC110_27750").prop("checked", false);
$("#esl_EENCx075_27745").prop("checked", true);
$("#esl_WLC110_27751").prop("checked", true);
}
var total = 0;
var reg = 0;
if ($('#dutch_EENCx075_27745').is(':checked')) {
reg = reg + 75;
window.document.registration.dutch_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.dutch_EENCx075_27745_subtotal.value = "";
}
if ($('#dutch_WLC110_27750').is(':checked')) {
reg = reg + 232;
window.document.registration.dutch_WLC110_27750_subtotal.value = 232;
reg = reg + 75;
window.document.registration.dutch_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.dutch_WLC110_27750_subtotal.value = "";
}
if ($('#esl_EENCx075_27745').is(':checked')) {
reg = reg + 75;
window.document.registration.esl_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.esl_EENCx075_27745_subtotal.value = "";
}
if ($('#esl_WLC110_27751').is(':checked')) {
reg = reg + 232;
window.document.registration.esl_WLC110_27751_subtotal.value = 232;
reg = reg + 75;
window.document.registration.esl_EENCx075_27745_subtotal.value = 75;
} else {
window.document.registration.esl_WLC110_27751_subtotal.value = "";
}
total = total + reg;
window.document.registration.amount1.value = total.toFixed(2); //display the grand total.
}