Почему калькулятор не считает?
Можно пинать...Но почему он не считает? NaN NaN NaN...Ясно, что лажаю, ясно, что <select> массив... В общем обгуглился до яндекса в печени...:help:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Калькулятор</title> <script type="text/javascript"> function abrakadabra(){ var futy_nuty= new Array(); futy_nuty[0]="30.21"; futy_nuty[1]="7.8"; futy_nuty[2]="517.6"; var ku_ku=document.getElementById('opredelis').value; var ma_ku=futy_nuty[ku_ku]; var skoka=document.getElementById('tuta').value; var krex=skoka/ma_ku*8.4; var pex=skoka/ma_ku*11.2; var fex=skoka/ma_ku*511.2*1.87; document.getElementById('zapoluchi1').value=krex.toFixed(2); document.getElementById('zapoluchi2').value=pex.toFixed(2); document.getElementById('zapoluchi3').value=fex.toFixed(2); } </script> <style> <!-- .stoka { font-family: Tahoma; font-size: 12pt; color: #000080 } --> </style> </head> <body> <br> <form id="dadudadu" name="dadudadu"> <div align="center"> <table border="0" width="500" cellpadding="10"> <tr> <td bgcolor="#B2DFEE"><span class="stoka">Выбери чё нада-та:</span></td> <td bgcolor="#B2DFEE" width="200" height="20"> <select id="opredelis" name="opredelis"> <option selected="selected" value="edakovo">Чё-нибудь эдаково </option> <option value="von_tavo">Вон таво</option> <option value="net_tavo">Нет таво</option></select></td> </tr> <tr> <td bgcolor="#B2DFEE"><span class="stoka">Скока вешать в граммах?:</span></td> <td bgcolor="#B2DFEE" width="200" height="20"> <input type="text" id="tuta" name="tuta" size="20"></td> </tr> <tr> <td bgcolor="#B2DFEE" colspan="2"> <input type="button" id="button" name="button" value="Щитать" onclick="abrakadabra();"></td> </tr> <tr> <td bgcolor="#B2DFEE"><span class="stoka">В том-то стока:</span></td> <td bgcolor="#B2DFEE" width="200" height="20"> <input type="text" id="zapoluchi1" name="zapoluchi1" size="20"></td> </tr> <tr> <td bgcolor="#B2DFEE"><span class="stoka">В сём-то стока:</span></td> <td bgcolor="#B2DFEE" width="200" height="20"> <input type="text" id="zapoluchi2" name="zapoluchi2" size="20"></td> </tr> <tr> <td bgcolor="#B2DFEE"><span class="stoka">В попугаях это будет стока:</span> </td> <td bgcolor="#B2DFEE" width="200" height="20"> <input type="text" id="zapoluchi3" name="zapoluchi3" size="20"></td> </tr> </table> </div> </form> <br> <br> <br> </body> </html> |
неверная строка
var ku_ku=document.getElementById('opredelis').value; ты получаешь: edakovo, von_tavo, net_tavo необходимо же тебе число от 0 до 2 |
Цитата:
а ma_ku=это вообще строка var futy_nuty= new Array(); futy_nuty[0]="30.21"; futy_nuty[1]="7.8"; futy_nuty[2]="517.6"; если число-то без кавычек |
Цитата:
var n=obj.imja_select.value; var a=imja_array[n]; Я тупо переписал - но толком смысла не понял, но пашет тот калькулятор во всех браузерах... |
Цитата:
var imja = new Array(); imja["marka1"]="3.87"; imja["marka2"]="4.29"; imja["marka3"]="4.72"; imja["marka4"]="5.15"; imja["marka5"]="5.57"; почему-то с кавычками, но считает... А skoka - это то, что вводится в 'tuta' |
смотрю в книгу, вижу фигу ?
уже же сказали что Цитата:
futy_nuty["edakovo"]="30.21"; и остальные по аналогии ? |
Цитата:
|
Цитата:
Уфф, заработало:dance: Спасибище!:thanks: |
у меня тоже пишет NAN... Помогите пожалуйста... Очень срочно нужно, делала вообще первый раз в жизни!((((
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Калькулятор на JavaScript</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <script type="text/javascript"> /* * Функция подсчета стоимости заливки наливного пола */ function calc() { //получаем ссылку на элемент Select (Тип пола) var type_floor = document.getElementById("type_floor"); //получаем ссылку на элемент Select (Дополнительные работы) var additional_works = document.getElementById("additional_works"); //получаем ссылку на чекбокс (Требуется стяжка?) var is_html = document.getElementById("is_html"); //получаем ссылку на элемент input (Площадь) var count = document.getElementById("area"); //получаем ссылку на элемент span, в него будем писать стоимость заливки var result = document.getElementById("result"); var price = ((document.getElementById("type_floor").value*docu ment.getElementById("area").value) + (document.getElementById("additional_works").value *document.getElementById("area").value) + (document.getElementById("is_html")*document.getEl ementById("area").value)); 0; result.innerHTML = price; } </script> </head> <body> <b>Тип пола:</b><br/> <select onchange="calc()" id="type_floor"> <option value="0">Выбрать</option> <option value="4800">Декоративный пол</option> <option value="4500">Декоративные полы с узором</option> <option value="2800">Одноцветный наливной пол</option> </select><br/> Дополнительные работы:</b><br/> <select onchange="calc()" id="additional_works"> <option value="0">Выбрать</option> <option value="200">Демонтаж плитки</option> <option value="150">Демонтаж деревянного пола</option> <option value="100">Демонтаж ламината</option> <option value="50">Демонтаж паркета</option> <option value="50">Демонтаж линолеума</option> </select><br/> <input type="checkbox" onchange="calc()" value="250" id="is_html" /> <label for="is_html">Требуется стяжка?</label> Площадь: <input type="text" id="area" onchange="calc()" /> <div>Стоимость заливки пола: <span id="result">0</span> руб.</div> </body> </html> |
var price = ((document.getElementById("type_floor").value*docu ment.getElementById("area").value)
+ (document.getElementById("additional_works").value *document.getElementById("area").value) + (document.getElementById("is_html")*document.getEl ementById("area").value)); С пробелами метод прописан, и в последнем выражении умножается объект на значение. А что за магическое - 0; ? function calc() { var a = document.getElementById("area").value.replace(/\D/, ''); document.getElementById("result").innerHTML = document.getElementById("type_floor").value * a + document.getElementById("additional_works").value * a + document.getElementById("is_html").value * a; } PS. Что вы как "чужой" в тела других вселяетесь? ) |
Часовой пояс GMT +3, время: 22:09. |