1

4 つの入力フィールド (連絡先 ID、電話番号、名前、挨拶) を持つ単純なフォームがあります。「連絡先ID」を入力してEnterボタンを押すと、フィールドの残りの部分が自動入力され、DBから取得されます。ここで、フォームに「送信」ボタンを追加して、そのボタンをクリックすることでそれらの情報を別の DB テーブルに保存できるようにします。ボタンを追加しようとしましたが、オートフィル機能が機能しなくなりました。誰でも助けることができますか?前もって感謝します:)ここに私のindex.htmlファイルがあります:

<html> 
    <body> 
        <script language="javascript" type="text/javascript">

    function ajaxFunction(e){
    var e=e || window.event;
    var keycode=e.which || e.keyCode;
    if(keycode==13 || (e.target||e.srcElement).value==''){ 
    var http;  // The variable that makes Ajax possible! 

    try{ 
        // Opera 8.0+, Firefox, Safari 
        http = new XMLHttpRequest(); 
    } catch (e){ 
        // Internet Explorer Browsers 
        try{ 
            http = new ActiveXObject("Msxml2.XMLHTTP"); 
        } catch (e) { 
            try{ 
                http = new ActiveXObject("Microsoft.XMLHTTP"); 
            } catch (e){ 
                // Something went wrong 
                alert("Your browser broke!"); 
                return false; 
            } 
        }
    }

    var url = "getagentids.php?param=";
                var idValue = document.getElementById("agid").value;
                var myRandom = parseInt(Math.random()*99999999);  // cache buster
                http.open("GET", "getagentids.php?param=" + escape(idValue) + "&rand=" + myRandom, true);
                http.onreadystatechange = handleHttpResponse;
                http.send(null);
         function handleHttpResponse() {
                    if (http.readyState == 4) {
                        results = http.responseText.split(",");
                        document.getElementById('agfn').value = results[0];
                        document.getElementById('agsal').value = results[1];
                        document.getElementById('agtel').value = results[2];
                        document.getElementById('agid').value = results[3];
                    }
                } 
    }
}

</script> 

       <form>
            <table>
                <tr>
                    <td>Contact ID:</td>
                    <td><input id="agid" type="text"
                               name="contactid" onkeyup="ajaxFunction(event)"></td>
                </tr>
                <tr>
                    <td>Tel Number:</td>
                    <td><input id="agtel" type="text"
                               name="contacttel"></td>
                </tr>
                <tr>
                    <td>Name:</td>
                    <td><input id="agfn" type="text"
                               name="contactfullname"></td>
                </tr>
                <tr>
                    <td>Salutation:</td>
                    <td><input id="agsal" type="text"
                               name="contactsalutation"></td>
                </tr>
                <tr>
                    <td><input type="reset" value="Clear"></td>
                    <td></td>
                </tr>
            </table>
        </form>

    </body> 
</html>  
4

1 に答える 1

1

フォームに入力したに送信ボタンを追加する場合は、を使用してこれを行うことができますinnerHTML

...
if (http.readyState == 4) {
   results = http.responseText.split(",");
   document.getElementById('agfn').value = results[0];
   document.getElementById('agsal').value = results[1];
   document.getElementById('agtel').value = results[2];
   document.getElementById('agid').value = results[3];
   document.getElementById('buttons').innerHTML = "<input type=\"submit\" name=\"submit\" value=\"Submit\"/>";  // add Submit button by innerHTML
}
...

そして、あなたのテーブルで、ボタン<div id="buttons">を追加したい場所に a を追加しますsubmit

<tr>
    <td><div id="buttons"></div><input type="reset" value="Clear"></td>
    <td></td>
</tr>
于 2012-11-13T17:12:30.593 に答える