如果我的keyup输入文本不匹配,我该如何更改值id?

时间:2012-01-13 03:52:21

标签: jquery input keyup

如果我的keyup输入文字不匹配,我该如何更改值id? 这是代码:

<script src="jquery-1.4.js"></script>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="jquery.autocomplete.js"></script>
<link rel="stylesheet" type="text/css" href="jquery.autocomplete.css" />
<script>
$(document).ready(function()
{
    $('[id^="participant"]').keyup(function() 
    {
        var txt = $(this).val();
        $.ajax({
            type: "POST",
            url: "blue.php",
            data: "nameparticipant=" + txt,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(data)
            {
                $(this).next().val(data.d); 
            },
            failure: failerEvent
        });
    });
});
</script>

这是php代码:

<?php
include"connection.php";
$nameparticipant=$_POST["nameparticipant"]);
$res = mysql_query("select * from tabel where upper(name) like '$nameparticipant%'");
$t=mysql_fetch_array($res);
echo "$t[id]";
?>

这是html正文:

<input type="text" id="participant1"  name="name[1][]" value="Andi"/>
<input type="text" id="idparticipant1" name="idparticipant[1][]" value="1001"/>

<input type="text" id="participant2"  name="name[2][]" value="Smith"/>
<input type="text" id="idparticipant2" name="idparticipant[2][]" value="1005" />

我该怎么办?请帮帮我:(

2 个答案:

答案 0 :(得分:0)

我不知道你要做什么,但我发现你的代码存在很多问题。

首先,contentType: "application/json; charset=utf-8",。这是发送到服务器的数据的内容类型。您没有将JSON发送到服务器,因此不需要此行,请将其删除。

其次,failure: failerEvent。该选项为error,而非failure。它应该是error: failerEvent

第三,echo "$t[id]";。在你的AJAX调用中,你说dataType: 'json',这意味着jQuery期望服务器输出JSON。我只能假设数据库表中的id字段实际上不是JSON字符串。您可能需要echo json_encode($t)

答案 1 :(得分:0)

请详细说明您的确想做什么,以及您的错误是什么?还有一个问题,为什么你在你的代码中使用两个jquery?第1个jquery-1.4.js和第2个jquery-1.3.2.min.js。