0

我想使用 jQuery 或 ajax 在 script.php 文件上发送多个选择的选定值(一一)。在 script.php 文件上发送值后。我想在 index.php 页面特定的输入框中显示 script.php 文件查询结果。举个例子:如果有人选择项目,那么项目描述和费率会显示在描述和费率输入框中。这是我的代码和图像

在此处输入图像描述

index.php 文件代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Item Description</title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

<script type="text/javascript">
$(document).ready(function() {

    $(".item").change(function() {

    var item = [];
    item:$(".item").each(function() {
            var num = parseFloat(this.value) || 1;
            item.push(num);
    });

        $.ajax({
            type: "POST",
            url: "script.php",
            data: item,
            success: function()
            {
                            // I failed to show script.php value

            }
        });

        return false;
    });

});
</script>
<style type="text/css">
table
{
    border: 1px solid black;
    border-bottom: none;
    width: 600px;
}


td
{
    border-left: 1px solid black;
    border-bottom: 1px solid black;
    padding:5px 5px 5px 5px;
}
#first
{
    border-left: none;
    border-bottom: 1px solid black;
}
</style>
    </head>
    <body>
        <form method='post' name='form1' action='welcome.php'>
        <table cellpadding="0" cellspacing="0">
            <tr>
                <td id="first">Item</td>
                <td>Description</td>
                <td>Rate</td>
            </tr>
            <?php
            $num=4;
            for ($i=0; $i<$num; $i++)
            {
                echo "
             <tr>
                 <td id='first'>
                 <Select class='item' name='item[]'/>
                 <option>Select one</option>
                 <option>Deluxe Plan</option>
                 <option>Premium Plan</option>
                 <option>Standard Plan</option>
                 <option>Economy Plan</option>
                 </select>
                </td>
                <td><textarea class='description' type='text' name='description[]'></textarea></td>
                <td><input class='rate' type='text' name='rate[]'/></td>
               </tr>";
            }
            ?>
     </table>
</form>
</body>
</html>

script.php 文件代码

<?php
include "dbconnect.php";

$item=$_REQUEST['item'];

$query="select * from item where item_name='$item'";
$result=mysql_query or die (mysql_error());

while ($row = mysql_fetch_array($result))
    {
    $description=$row['description'];
    $rate=$row['rate'];
    }
?>

请任何人帮助我解决这个问题。

4

1 回答 1

0

尝试这个

data: { 'item' : item.serializeArray() }

在将阵列发送到服务器之前对其进行序列化..

success: function(result) {

}

您使用页面中的数据参数并将其发送到您的服务器......您使用数据来查询一些结果并以轻量级的 JSON 形式发回结果。

从服务器返回的这个结果可以在你的 AJAX 请求的成功回调函数中处理,它可以用来操作 DOM...

检查此链接:http ://www.webdeveloper.com/forum/showthread.php?240091-how-to-return-data-from-php-to-jquery-AJAX

于 2012-10-04T20:20:15.437 回答