0

変わりたい:

function showUser(str)
{
    if (str=="")
    {
        document.getElementById("txtHint").innerHTML="";
        return;
    } 
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","get_content.php?q="+str,true);
    xmlhttp.send();
}

jQuery ajax に。今、私はそれを達成するために以下を持っています:

    $('#menurow').change(function () {
    $.ajax({
        type: "GET",
        url: "get_content.php?q="+str,true,
        data: $('#txtHint').innerHTML(),
        success: function(data) {
            alert('test');
        }
    })
});

このコードを試してみると、ブラウザーは Uncaught SyntaxError: Unexpected identifier on data: と言い続けます$('#txtHint').innerHTML()。誰かがこれを修正する方法を知っていますか? これは、html/php コードです。

    <form>
<select name="menurow" id="#menurow">
<option value ="select">Selecteer een menu</option>
 <?php 
    $sql= mysql_query("SELECT * FROM Menu") or die(mysql_error());

    while ($row = mysql_fetch_array($sql))
    {
        ?><option data="menu" value="<?php echo $row['menu_id']; ?>"><?php echo $row['menu_name']; ?></option>
        <?php
        $subsql= mysql_query("SELECT * FROM SubMenu INNER JOIN Menu WHERE SubMenu.menu_id = Menu.menu_id AND Menu.Menu_id = ".$row['menu_id']."") or die(mysql_error());
        while ($subrow = mysql_fetch_array($subsql))
        {
        ?><option data="submenu" value="<?php echo $subrow['submenu_id']; ?>"><?php echo "--".$subrow['submenu_name']; ?></option>
        <?php
        }
    }
 ?>
</select>
</form>
<div id="txtHint"></div>

前もって感謝します

助けてくれてありがとう。今、私は次のように持っています:

$('.menurow').change(function(str) {
    $.ajax({
        type: "GET",
        url: "get_content.php?q="+str,
        success: function(data) {
            $('#txtHint').html(data);
                        tinyMCE.init({
            theme : "advanced",
            mode : "textareas"
        });
        }
    })
}); 

フォームのデータを取得するにはどうすればよいですか? 関数内で str を宣言しました。このため、空のフィールドが表示されます。どうすればそれらをデータで埋めることができますか?

4

3 に答える 3

1
url: "get_content.php?q="+str

その,true,部分は必要ありません。

また、データの変数名も必要です。ちなみに、URLに追加せずに、同じ形式を使用してq変数を渡すことができます(メソッドを使用しても機能します)

短いバージョンを使用できます:

$.get("get_content.php", {q: str, txtHint: $('#txtHint').innerHTML()}, 
    function(data) {
         alert('test');
    }
);
于 2013-04-04T14:55:06.897 に答える