php
  • ajax
  • forms
  • onblur
  • 2014-05-04 82 views 0 likes 
    0

    嗨,我有一個非常小的問題。我正在使用ajax調用來獲取客戶ID的值onblur。我能夠在表單中獲得一個值,但我想要多個值來填寫表單字段。我的部分代碼如下:onblur ajax從數組中獲得多個表單字段值

    req.onreadystatechange = processReqChange; 
    req.open("GET", url + '?mob=' + number, true); 
    req.send(null); 
    
    function processReqChange() { 
    
        if (req.readyState == 4) { 
    
         if (req.status == 200) { 
          document.getElementById('oper').value = req.responseText; 
               } 
              } 
              } 
    

    用於發送數據我的PHP代碼:

    $f = fopen('file.csv', "r"); 
        $result = false; 
        while ($row = fgetcsv($f)) { 
         if ($row[0] == $mob) { 
          $result = $row[1]; 
          break; 
         } 
        } 
        fclose($f); 
        echo $result; 
    

    我應該如何發送多個值,如$行[2],$行[3]填寫表格字段如用戶名,電子郵件等 請指教。

    回答

    1

    標準的方法是讓PHP返回一個JSON字符串並在JS中解析它。

    例在PHP(無動態這裏):

    echo '{"key1":"value1", "key2":"value2", "key3":"value3"}'; 
    

    然後使用在JS:

    var result = JSON.parse(req.responseText); 
    // now you can use the values returned by PHP 
    alert(result.key1); 
    

    有關如何使用PHP產生JSON的更多信息:http://www.php.net/manual/book.json.php

    請注意這個例子是非常原始的。您可能希望在JS代碼中添加更多的JSON完整性/有效性檢查,當然還有更優雅的PHP代。

    +0

    thnks我試過這樣,但我仍然只獲得$ result [1]值的形式不是$ result [2]'var result = JSON.parse(req.responseText); document.getElementById('oper')。value = result [1]; document.getElementById('state').value = result [2];' – user2649343

    +0

    ok done。謝謝@fjc – user2649343

    相關問題