0

私はJSとプログラミングが初めてです..

フォームのテキスト フィールドに onchange() を実装し、値が変更された場合にそのフォーム フィールドの値をキャプチャする方法を学びたいです。また、その情報をテキスト ファイルに保存します。このファイルは、PHP で作成できます。 fopen を使用して値を挿入できるテキスト ファイルが既にあります。しかし、テキストファイルに書き込む前に一時変数をキャプチャして保存する方法。

私はここにコードを含めています..

これは、このデータを更新するために使用している更新ページからのものです...

事前に感謝..

//function for multiple select field 
<script>
function Technology(value,state)
{
   if (value > -1) {
      var input= new Array(value);
      var p;

      var techs = [

         <?php
            $con = mysql_connect("localhost", "root");
            if (!$con)
            {
               die('Could not connect: ' . mysql_error());
            }
            mysql_select_db("root", $con);

            $load = mysql_query("SELECT tech from t_tech");
            while($arr = mysql_fetch_array($load))
            {
               echo "'".$arr[0]."',";
            }
         ?>
      ].sort();
      var ele = document.getElementById("tech");

      if(ele.hasChildNodes())
      {
         var len = ele.childNodes.length;
         while(ele.childNodes.length - value > 1)
         {
            ele.removeChild(ele.lastChild);
         }
      }
      var tech_array = new Array;
      <?php
         for($i = 0;$i<$_POST['tech_num'];$i++)
         {
            $p = $i+1;
            echo "tech_array[$i] = '".$_POST['tech'.$p]."';";
         }
      ?>

      for (var i=len-1;i<value;i++)
      {
         p= i+1;
         input[i] = document.createElement('div');

         if(state ==1 )
         {
            input[i].innerHTML = 'Technology' + p + ':  &nbsp;&nbsp; <input type="text" name="tech' + p + '" id="tech' + p +'" size = 25 value="'+tech_array[i] +'"/>';
         }
         else if (state == 0)
         {
            input[i].innerHTML = 'Technology' + p + ':  &nbsp;&nbsp; <input type="text" value="" name="tech' + p + '" id="tech' + p +'" size = 25/>';
         } 

         document.getElementById("tech").appendChild(input[i]);

         var techId = 'tech' + p;

         AutoComplete_Create(techId,techs);

      }           
}}
</script>  

これはフォーム フィールドです。

<tr> 
   <td><b>
      Field1: <select name="tech_num" id="tech_num" onChange="return Technology(this.value,0)"> 
      <?php 
         for ($i=0;$i<=5;$i++) { 
            if ($i==0) 
               $temp = "<option value=$i> - </option>"; 
            else if($i == $_POST['tech_num']) 
               $temp = "<option value=$i selected='selected'>$i</option>"; 
            else $temp = "<option value=$i>$i</option>"; 
               echo $temp; } 
      ?> 
      </select>
   </td>
</tr> 
</table> 
<div id="tech"> </div> <table>
4

2 に答える 2

1

サーバー上のテキストファイルに値を保存するには、クライアントからデータを送信する必要があります。最善の策は、onChange関数のajax呼び出しを、値を格納するだけの特別なphpページに追加することです。

http://www.w3schools.com/jsref/event_onchange.asp

http://www.w3schools.com/ajax/default.asp

于 2012-04-13T12:26:51.933 に答える
0

Web アプリケーションでのファイルの使用に関する Mozilla のこの記事をお勧めします。

彼らが提供する最も単純な例には、次のようなスニペットが含まれます。

// Dynamically adding a change listener
var inputElement = document.getElementById("inputField");
inputElement.addEventListener("change", handleFiles, false);
function handleFiles() {
    var fileList = this.files; /* now you can work with the file list */
}

注: W3Schools で読むものには注意が必要です。彼らの情報は、正確さよりも SEO を重視しています。

于 2012-12-19T00:30:21.507 に答える