2013-01-30 2 views
0

Я создаю форму, которая извлекает значение из базы данных и динамически сохраняет значение в таблице. У меня есть кнопка с именем add, которая добавляет строку динамически, когда пользователь нажимает ее, и у меня есть скрытый счетчик, который подсчитывает добавленные строки.Как сохранить значение из текстового поля html в переменную javascript

Проблема заключается в том, когда я принести запись, счетчик показывает число строк, присутствующих и при добавлении новой строки она восходит к 1.

Если есть две строки в таблице, счетчик покажет 2, но когда я попытаюсь добавить новую строку, счетчик показывает 1.

Есть ли способ установить значение из встречного текста в переменную JavaScript и увеличить его?

Вот мой код JavaScript:

<script language="javascript" type="text/javascript"> 
    var jj= 1; 
    alert(jj); 
    function addRow() 
    { 
     //alert(jj) 
     var tbl = document.getElementById('zimtable'); 
     var lastRow = tbl.rows.length; 
     var iteration = lastRow - 1; 
     var row = tbl.insertRow(lastRow); 

     var firstCell = row.insertCell(0); 
     var el = document.createElement('input'); 
     el.type = 'text'; 
     el.name = 'zimname_' + jj; 
     el.id = 'zimname_' + jj; 
     el.size = 40; 
     el.maxlength = 40; 
     firstCell.appendChild(el); 

     var secondCell = row.insertCell(1); 
     var el2 = document.createElement('input'); 
     el2.type = 'text'; 
     el2.name = 'zimmob_' + jj; 
     el2.id = 'zimmob_' + jj; 
     el2.size = 13; 
     el2.maxlength = 13; 
     secondCell.appendChild(el2); 

     // alert(i); 
     //$('#hh').val(jj); 
     jj++; 
     makhtab.hh.value=jj; 

     alert(jj); 
    } 
</script> 

Вот мой PHP код, чтобы показать таблицу:

<?php 

    $zim = mysql_query("SELECT * FROM `makhzim` WHERE makhcode='$newsid' ORDER BY srno")or die(mysl_error()); 
    $ctrzim = 0; 
    while ($zrow = mysql_fetch_array($zim)){ 
     $ctrzim++; 
     print '<script type="text/javascript">'; 
     print "alert('$i')"; 
     print '</script>'; 
     echo "<tr>"; 
     echo "<td><input name='zimname_$ctrzim' type='text' size='40' maxlength='20' value=$zrow[name] /></td>"; 
     echo "<td><input name='zimmob_$ctrzim' type='text' size='13' maxlength='20' value=$zrow[mobile] /></td>"; 
     echo "</tr>"; 
    } 
    echo "</table>"; 
    echo "<input type=\"button\" value=\"Add\" onclick=\"addRow();\" /><input id=\"hh\" name=\"hh\" type=\"text\" value= '$ctrzim'/>"; 
?> 
+1

Вы используете [** устаревший ** API баз данных] (http://stackoverflow.com/q/12859942/19068) и должны использовать [современную замену] (http://php.net/manual /en/mysqlinfo.api.choosing.php). Вы можете (мы не можем видеть, откуда появляется '$ newsid') также уязвимы для [SQL injection attack] (http://bobby-tables.com/) **, что современный API упростит [защищать] (http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php) от себя. – Quentin

+0

ну $ newsid извлекается из запроса выше, который я havent отправил сэр, я действительно застрял в беспорядке, помогите мне – suhail

ответ

0

В коде PHP поставить значение счетчика на скрытый элемент

<input type = "hidden" id = "hiddenElementId" value = "your php counter value"/> 

В Вашем javascript

<script> 
    var count; 
    window.onload=function(){ 
     count = = document.getElementById("hiddenElementId").value; 
    }; 
    function addRow() { 
     alert(count); 
     .. 
     .. 
     count++; 
     } 
<script> 
Смежные вопросы