在第一个文本框

时间:2017-01-23 11:09:41

标签: javascript php mysql ajax

这是屏幕

enter image description here

名为“fetching_book_title_for_barcode.php”的php文件。

<?php
require_once('db.php');

$response=array();

$sql="select book_title from book where barcode_id LIKE '%".$_POST['value']."%'";

$result=mysql_query($sql);

if(mysql_num_rows($result)){

    $book_title=mysql_fetch_assoc($result);

    $response["book_title1"]=$book_title;
    }
    echo json_encode($response);   
?>

这是带有一些ajax调用的java脚本文件。

var searchTimeout;//Timer to wait a little before fetching the data
$("#barcode_id_textBox").keyup(function() {
    var searchKey = this.value;

    clearTimeout(searchTimeout);

    searchTimeout = setTimeout(function() {
        barcodeTextboxFill(searchKey);    
    }, 400); //If the key isn't pressed 400 ms, we fetch the data
});
function barcodeTextboxFill(searchKey){
     $.ajax({
        url: 'fetching_book_title_for_barcode.php',
        type: 'POST',
        dataType: 'json',
        data: {value: searchKey},
        success: function(data) {
                $("#book_title_textBox").val(data);
        }
    }); 

}

HTML

<input type="text" id="barcode_id_textBox">
<input type="text" id="book_title_textBox">

`我正在根据他们的要求为我的大学制作图书馆管理系统。

在MySql数据库中,我有一个书籍表,其中我插入了书籍记录,其中一列用于条形码id,另一列用于书名。

我有一个html页面,其上有2个内联文本框,其中一个用于条形码ID,另一个用于书名。

现在我希望在输入条形码ID的同时,从数据库中取出书名并在书名的文本框中显示。

我尝试了很多,但我找不到任何解决方案。我通过ajax尝试了但是我没有得到所需的答案。它有什么问题?

每个人的帮助将不胜感激。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用AJAXjQuery

在您的文本框中添加onChange<input type="text" id="barcodeTextBox" onChange="BarcodeBoxFill()">,只要文本框被更改,onChange就会调用JS函数BarcodeBoxFill()

然后JS函数应该从框var text = $('#barcodeTextBox').val()

中获取输入

然后在同一个函数上应该是你的AJAX调用,它将文本框的值作为参数传递。然后在页面中,AJAX调用将是一些SQL,它为另一个框获得正确的值(在本例中为书名)。作为AJAX的success部分,您可以更改其他文本框的值,

success: function(data) {
    $('#bookTitleTextBox').val(data);
}`