Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Условие input type: radio (https://javascript.ru/forum/misc/36655-uslovie-input-type-radio.html)

Findail 23.03.2013 17:52

Условие input type: radio
 
<SCRIPT LANGUAGE="JavaScript">
function price(form) {
if(document.getElementById('R1').checked) {
var iadro=parseFloat(form.R1.value);
}
if(document.getElementById('R4').checked) {
var iadro=parseFloat(form.R4.value);
}

if(document.getElementById('Da').checked) {
var nachalo=parseFloat(form.Da.value);
}

if(document.getElementById('Net').checked) {
var nachalo=parseFloat(form.Net.value);
}

нужно сделать условие, что если не выбранно ни одной опции, то значение iadro=0; соответственно для "nachalo"
Помогите новичку...

Ervin 23.03.2013 18:00

Можно HTML и конкретней задачу.

Findail 23.03.2013 18:02

<b  align="center">Вид профиля</b>
<br>
<table>
<tr>
    <input type="radio" value="200" name="iadro" id ="R1"/>  &nbsp; <b align="center"> R_1 профиль </b>
<br>
    <input type="radio" value="100" name="iadro" id ="R4"/>  &nbsp; <b align="center"> R_4 профиль </b>
<br>
<tr>
  <tr>
<br><b  align="center">Стекло</b><br>
    <input type="radio" value="100" name="nachalo" id ="Da"/>  &nbsp; <b align="center"> Стекло 1 </b>
<br>
    <input type="radio" value="0" name="nachalo" id ="Net"/>  &nbsp; <b align="center"> Стекло 2 </b>
<br>


Если пользователем не выбрано значение input "iadro", то iadro=0;
Точно также и в input "nachalo"

Ervin 23.03.2013 18:20

<script type="text/javascript">
	function check() {
		var el1 = document.getElementById("R1"),
		     el2 = document.getElementById("R2"),
		     value = 0;
		
		if(!el1.checked && !el2.checked) {
			value = 0;
		}
		else {
			value = (el1.checked) ? el1.value : el2.value;
		}
	}
	
	window.onload = check;
</script>


Если это должно происходить при посылке формы тогда нужно добавить:
el1.value = 0;
el2.value = 0;

В до строки value = (el1.checked) ?....

Собственно когда это должно происходить ?

рони 23.03.2013 18:29

Findail,
function price(form) {
var iadro = 0;
if(document.getElementById('R1').checked) {
iadro=parseFloat(form.R1.value);
}
if(document.getElementById('R4').checked) {
iadro=parseFloat(form.R4.value);
}
var nachalo = 0;
if(document.getElementById('Da').checked) {
nachalo=parseFloat(form.Da.value);
}

if(document.getElementById('Net').checked) {
nachalo=parseFloat(form.Net.value);
}
}

danik.js 23.03.2013 18:30

function getRadioValue(name) {
    var radios = document.getElementsByName(name);
    for (var i = 0, radio; radio = radios[i]; i++) {
        if (radio.checked) return radio.value;
    }
    return null;
}

var iadro = getRadioValue('yadro') || 'дефолтное значение',
    nachalo = getRadioValue('nachalo') || 'дефолтное значение';

Атрибут language указывать не нужно.


Часовой пояс GMT +3, время: 08:49.