在firebug PHP ajax中没有发现任何元素错误


no element found error in firebug php ajax

嗨,我一直在这个脚本上得到这个错误"没有找到元素",即使添加了"header('Content-Type: text/plain');"。有人能帮忙吗?谢谢。

categories.php

    <?php
    if(isset($_GET['1'])) {
    header('Content-Type: text/plain');
        echo <<<HERE_DOC
    <option value="1.1">Antiquities &gt;</option>
    <option value="1.2">Architectural &amp; Garden &gt;</option>
    <option value="1.3">Asian Antiques &gt;</option>
    <option value="1.4">Books &amp; Manuscripts &gt;</option>
    <option value="1.5">Decorative Arts &gt;</option>
    <option value="1.6">Ethnographic &gt;</option>
    <option value="1.7">Furniture &gt;</option>
    <option value="1.8">Home &amp; Hearth &gt;</option>
    <option value="1.9">Linens &amp; Textiles (Pre-1930) &gt;</option>
    <option value="1.10">Maps, Atlases &amp; Globes &gt;</option>
    <option value="1.11">Maritime &gt;</option>
    <option value="1.12">Mercantile, Trades &amp; Factories &gt;</option>
    <option value="1.13">Musical Instruments (Pre-1930) &gt;</option>
    <option value="1.14">Periods &amp; Styles &gt;</option>
    <option value="1.15">Primitives;</option>
    <option value="1.16">Restoration &amp; Care &gt;</option>
    <option value="1.17">Rugs &amp; Carpets &gt;</option>
    <option value="1.18">Science &amp; Medicine (Pre-1930) &gt;</option>
    <option value="1.19">Sewing (Pre-1930) &gt;</option>
    <option value="1.20">Silver &gt;</option>
    <option value="1.21">Reproduction Antiques</option>
    <option value="1.22">Other</option>
    HERE_DOC;
    }
    if(isset($_GET['2'])) {
    header('Content-Type: text/plain');
        echo <<<HERE_DOC
    <option value="60435">Direct from the Artist &gt;</option>
    <option value="158658">Art from Dealers &amp; Resellers &gt;</option>
    <option value="52524">Wholesale Lots &gt;</option>
    HERE_DOC;
    }
    if(isset($_GET['3'])) {
    header('Content-Type: text/plain');
        echo <<<HERE_DOC
    <option value="60435">Direct from the Artist &gt;</option>
    <option value="158658">Art from Dealers &amp; Resellers &gt;</option>
    <option value="52524">Wholesale Lots &gt;</option>
    HERE_DOC;
    }

post_categories.html

    <!DOCTYPE HTML>
    <html>
    <head>
    <script type="text/javascript">
    // Initialize the object:
    var ajax = false;
    // Create the object...
    // Choose object type based upon what's supported:
    if (window.XMLHttpRequest) {
        // IE 7, Mozilla, Safari, Firefox, Opera, most browsers:
        ajax = new XMLHttpRequest();
    } else if (window.ActiveXObject) { // Older IE browsers
        // Create type Msxml2.XMLHTTP, if possible:
        try {
            ajax = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e1) { // Create the older type instead:
            try {
                ajax = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e2) { }
        }
    }
    // Send an alert if the object wasn't created.
    if (!ajax) {
        alert ('Page functionality is unavailable. Update your browser.');
    }
    // Function that starts the Ajax process:
    function categories_chain(username) {
        // Confirm that the object is usable:
        if (ajax) { 
            // Call the PHP script.
            // Use the GET method.
            // Pass the username in the URL.
             ajax.open('get', 'categories.php?' + encodeURIComponent(username), true);
    // Function that handles the response:
    ajax.onreadystatechange = handle_check;
    // Send the request:
    ajax.send(null);

    } // End of check_username() function.
    // Function that handles the response from the PHP script:
    function handle_check() {
        // If everything's OK:
        if ( (ajax.readyState == 4) && (ajax.status == 200) ) {
            // Assign the returned value to a document element:
            document.getElementById('div2').innerHTML = ajax.responseText;
        }
    } // End of handle_check() function.
    }
    </script>
    </head>
    <body>
    <form name="postadd">
        <div id='div1'>
            <select name="cat1" onChange='categories_chain(cat1.options[selectedIndex].value)'>
                <option value="1">Antiques &gt;</option>
                <option value="2">Art &gt;</option>
                <option value="3">Automotive &gt;</option>
            </select>
        </div>
        <div id='div2'>
        </div>
    </body>
    </html>

我的建议是:

<?php if(isset($_GET['1'])): ?>
<option value="1.1">Antiquities &gt;</option>
<option value="1.2">Architectural &amp; Garden &gt;</option>
<option value="1.3">Asian Antiques &gt;</option>
....
<?php elseif (isset($_GET['2'])): ?>
<option value="1.1">Antiquities &gt;</option>
<option value="1.1">Antiquities &gt;</option>
.... 
<?php endif;?>

这样你的代码更有条理,也不会减少出错的机会