Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.11.2012, 09:57
Новичок на форуме
Отправить личное сообщение для usbmaster Посмотреть профиль Найти все сообщения от usbmaster
 
Регистрация: 23.11.2012
Сообщений: 1

Что я делаю не так?
Подскажите, почему не считает?
Код:
<script>
function calc.curFieldNameId() { 
            var tol = document.getElementById("tol[" + curFieldNameId + "]"); 
            var A = document.getElementById("A[" + curFieldNameId + "]"); 
            var B = document.getElementById("B[" + curFieldNameId + "]"); 
            var L = document.getElementById("L[" + curFieldNameId + "]"); 
            var count = document.getElementById("RESULT_S[" + curFieldNameId + "]"); 
            var result = document.getElementById("result[" + curFieldNameId + "]");  

            var price."[".curFieldNameId."]" = 0; 
            price."[".curFieldNameId."]" += parseInt(tol."[".curFieldNameId "]".options[tol."[".curFieldNameId."]".selectedIndex].value); 
            price."[".curFieldNameId."]" = (parseInt(A."[".curFieldNameId."]".value)+parseInt(B."[".curFieldNameId."]".value))*0.002*parseInt(L."[".curFieldNameId."]".value)*0.001  * price."[".curFieldNameId."]". * parseInt(count."[".curFieldNameId."]".value); 

            result.innerHTML = price."[".curFieldNameId."]"; 
        } 
</script>

<script>
function calc."[1]"() { 
            var tol = document.getElementById("tol[1]"); 
            var A = document.getElementById("A[1]"); 
            var B = document.getElementById("B[1]"); 
            var L = document.getElementById("L[1]"); 
            var count = document.getElementById("RESULT_S[1]"); 
            var result = document.getElementById("result[1]");  

            var price."[1]" = 0; 
            price."[1]" += parseInt(tol."[1]".options[tol."[1]".selectedIndex].value); 
            price."[1]" = (parseInt(A."[1]".value)+parseInt(B."[1]".value))*0.002*parseInt(L."[1]".value)*0.001  * price."[1]". * parseInt(count."[1]".value); 

            result.innerHTML = price."[1]"; 
        } 
</script>

  <table>
<tr>
<td><strong>Толщина, мм (руб./м2)</strong></td>
<td>L, мм</td>
<td>A, мм</td>
<td>B, мм</td>
<td>Кол-во, шт</td>
<td>Сумма, руб.</td>
</tr>
<tr>
<div id="parentId">
  <div>

<td><select id="tol[1]" onchange="calc[1]()">
<option value="900">0.5</option>
<option value="1200">0.7</option>
<option value="1500">1.0</option>
</select></td>
<td> <input id="L[1]" type="text" value="0" onchange="calc[1]()" /></td>
<td> <input id="A[1]" type="text" value="0" onchange="calc[1]()" /></td>
<td> <input id="B[1]" type="text" value="0" onchange="calc1[1]()" /></td>
<td> <input id="count[1]" type="text" value="1" onchange="calc[1]()" /></td>
<td><span id="result[1]">0</span></td>
</tr>

    <a style="color:green;" onclick="return addField()" href="#">[+]</a>
  </div>
</div>

<script>
var countOfFields = 1; // Текущее число полей
var curFieldNameId = 1; // Уникальное значение для атрибута name
var maxFieldLimit = 25; // Максимальное число возможных полей
function deleteField(a) {
  if (countOfFields > 1)
  {
 // Получаем доступ к ДИВу, содержащему поле
 var contDiv = a.parentNode;
 // Удаляем этот ДИВ из DOM-дерева
 contDiv.parentNode.removeChild(contDiv);
 // Уменьшаем значение текущего числа полей
 countOfFields--;
 }
 // Возвращаем false, чтобы не было перехода по сслыке
 return false;
}
function addField() {
 // Проверяем, не достигло ли число полей максимума
 if (countOfFields >= maxFieldLimit) {
 alert("Число полей достигло своего максимума = " + maxFieldLimit);
 return false;
 }
 // Увеличиваем текущее значение числа полей
 countOfFields++;
 // Увеличиваем ID
 curFieldNameId++;
 // Создаем элемент ДИВ
 var div = document.createElement("div");
 // Добавляем HTML-контент с пом. свойства innerHTML
 div.innerHTML = "  <table><tr><td><strong>Толщина, мм (руб./м2)</strong></td><td>L, мм</td><td>A, мм</td><td>B, мм</td><td>Кол-во, шт</td><td>Сумма, руб.</td></tr><tr><td><select id=\"tol[" + curFieldNameId + "]\" onchange=\"calc[" + curFieldNameId + "]()\"><option value=\"900\">0.5</option><option value=\"1200\">0.7</option><option value=\"1500\">1.0</option></select></td><td> <input id=\"L[" + curFieldNameId + "]\" type=\"text\" value=\"0\" onchange=\"calc[" + curFieldNameId + "]()\" /></td><td> <input id=\"A[" + curFieldNameId + "]\" type=\"text\" value=\"0\" onchange=\"calc[" + curFieldNameId + "]()\" /></td><td> <input id=\"B[" + curFieldNameId + "]\" type=\"text\" value=\"0\" onchange=\"calc()\" /></td><td> <input id=\"count[" + curFieldNameId + "]\" type=\"text\" value=\"1\" onchange=\"calc[" + curFieldNameId + "]()\" /></td><td><span id=\"result[" + curFieldNameId + "]\">0</span></td></tr><a style=\"color:green;\" onclick=\"return addField()\" href=\"#\">[+]</a>";
 // Добавляем новый узел в конец списка полей
 document.getElementById("parentId").appendChild(div);
 // Возвращаем false, чтобы не было перехода по сслыке
 return false;
}
  










</script>

</table>
Ответить с цитированием
  #2 (permalink)  
Старый 23.11.2012, 10:39
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

Открывайте консоль и смотрите ошибки, никто не будет заниматься дебагом вашего скрипта. По крайней мере бесплатно.
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 23.11.2012, 11:53
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

usbmaster, ошибок туча...
так функции в JS не объявляются
calc.curFieldNameId()...
calc."[1]"...

если вы что-то отправляете в функцию, то это делается с помощью аргументов
<script>
function func (arg1, arg2, ...) {
...
}
</script>
...
<input onClick="func('abc', 'def', ...);">

это уже не переменная...в JS "строки" соединяются с помощью "+"
var price."[".curFieldNameId."]" = 0;
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
О фрилансе (Личный опыт) free Оффтопик 105 18.08.2011 17:02
Что не так (вопрос от новичка) wermut Общие вопросы Javascript 3 12.07.2010 13:53
Вопросов несколько, так что опишу их дальше=) TrooMan Javascript под браузер 25 23.03.2010 19:02
На narod.ru не работает Dojo, что я делаю не так? vlad275 Dojo toolkit 1 29.10.2008 19:18
Что не так? giGnet Общие вопросы Javascript 8 23.06.2008 22:51