Я работал над этим более 8 часов, пытаясь использовать разные сценарии. Как: if/else, создавая 2 имени и значения, создавая "скрытый" ввод с именем и значениями, создавайте javascript, но jquery тормоз, вот что я получил благодаря @Mood http://jsfiddle.net/LZ5Uz/4/: Теперь моя первая переменная, которую мне нужно отправить, - это "сумма" (у меня ее есть), но мне нужно отправить "повторение" из того же радио, который был проверен. Пример:
<input name="amount" id="result" type="hidden" />//Here I will send the variable "amount"
Теперь для переменной "повторяющийся" я пытался:
<input id="q" type="radio" name="presets,recurring" class="q" value="12,Quarterly" />Quarterly
<labels id="choice_q" class="q"></label> //JQuery break
Пытаться:
$('input:radio[name="presets"]').change(
function(){
if ($(this).is(':checked') && $(this).val() == 'monthly') {
}
});
Я noob на этом... переменная и значение, которое мне нужно отправить, это: (variable-->) name = "повторяющийся" (значение ->) первая радиостанция проверяется = "ежемесячно" вторая радиостанция = "ежеквартально" "третья радиостанция проверена =" год "
Описание
Чтобы решить вышеупомянутую проблему, я использовал knockoutjs, потому что это предназначено для этого типа UI (UX). jQuery не предназначен для такого типа дизайна.
HTML
<div>
<input id="amount" type="number" data-bind="value: Amount" />
</div>
<div>
<input id="m" type="radio" name="presets" value="0" data-bind="checked: RecurringOption, value: Option1" />
<label for="m" id="choice_m" data-bind="text: Option1"></label>
<input id="q" type="radio" name="presets" value="1" data-bind="checked: RecurringOption, value: Option2" />
<label for="q" id="choice_q" data-bind="text: Option2"></label>
<input id="y" type="radio" name="presets" value="2" data-bind="checked: RecurringOption, value: Option3" />
<label for="y" id="choice_y" data-bind="text: Option3"></label>
</div>
<input id="result" type="text" readonly="readonly" />
<input id="recurringOption" type="hidden" data-bind="value: RecurringOption" />
JS
// This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
function AppViewModel() {
var self = this;
this.Amount = ko.observable(50);
this.RecurringOption = ko.observable();
this.Option1 = ko.computed(function () {
if (self.Amount() != null) return (parseFloat(self.Amount(), 10) / parseFloat(36, 10)).toFixed(2);
return 0;
}, self);
this.Option2 = ko.computed(function () {
if (self.Amount() != null) return (parseFloat(self.Amount(), 10) / parseFloat(12, 10)).toFixed(2);
return 0;
}, self);
this.Option3 = ko.computed(function () {
if (self.Amount() != null) return (parseFloat(self.Amount(), 10) / parseFloat(3, 10)).toFixed(2);
return 0;
}, self);
}
$(function () {
// Activates knockout.js
ko.applyBindings(new AppViewModel());
$("input[name='presets']").change(function () {
var id = $("input:checked").attr("id");
$("#result").val($('#' +id).val());
});
});