根据第一个文本框值从数据库值自动填充文本框

用户名

我试图基于在文本框中输入的值,将值从数据库自动填充到文本框。输入名称后,我应该立即获得DOB。

我尝试按照以下示例http://www.htmlblog.us/open-source/jQueryAutocompleteRelatedFields.html进行操作,但我不知道为什么它对我不起作用。

这是我的代码

html

<form name="appointment" method="post" action="apponiment_submit.php" enctype="multipart/form-data" onsubmit="return validate()">
<table class="selection">

<tr><td colspan="3"><CENTER><font color="red"><strong>Fields Marked Star Are Compulsory</strong></font></CENTER></td></tr>
<tr><td>Patient Name  :</td><td><input type="text" name="p_name" id="p_name" /><STRONG><font color="red">*</font></STRONG></td></tr>

<tr><td>DOB :</td><td><input type="text" name="p_dob" id="p_dob" class="tcal" /></td></tr>
</table>
</form>

脚本

<script type="text/javascript">

        jQuery(document).ready(function(){

            $('.p_name').autocomplete({
                source:'fill_patient_info1.php', 
                minLength:2,
                select:function(evt, ui)
                {
                    // when a zipcode is selected, populate related fields in this form
                    this.form.p_name.value = ui.item.p_name;
                    this.form.p_dob.value = ui.item.p_dob;
                }
            });
        });

    </script>

并在fill_patient_info1.php中

// if the 'term' variable is not sent with the request, exit
if ( !isset($_REQUEST['term']) )

    exit;
 echo $_REQUEST['term'];
// connect to the database 
$dblink = mysql_connect('localhost', 'root', '') or die( mysql_error() );
mysql_select_db('hospital');


$rs = mysql_query('select patient_name,dob from patient where patient_name like "'. mysql_real_escape_string($_REQUEST['term']) .'%" order by patient_name asc limit 0,10', $dblink);

$data = array();
if ( $rs && mysql_num_rows($rs) )
{
    while( $row = mysql_fetch_array($rs, MYSQL_ASSOC) )
    {
        $data[] = array(
            'label' => $row['patient_name'] .', '. $row['dob'] .' '. $row['patient_name'] 
        );
    }
}

// jQuery wants JSON data
echo json_encode($data);
flush();

我不太熟悉json和jquery。因此,我没有走错地方。而不是$_REQUEST['term'];我尝试放置$_REQUEST['p_name'];,但是没有用。

请建议

kiks73

在文件中,fill_patient_info1.php您无需请求term或p_name。您必须写下完整的查询,而没有类似的条件。jQuery UI自动完成将完成其余的工作。您的sql应为:

select patient_name, dob from patient order by patient_name limit 10

更新:创建数组时,如果您也想填充配音,则还需要指定如下值:

$data[] = array(
        'label' => $row['patient_name'] .', '. $row['dob'] .' '. $row['patient_name'] ,
        'value' => $row['dob']
    );

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据数据库中的另一个文本框填充文本框值

jQuery根据第一个输入的文本框值填充以数组命名的表单字段

根据另一个文本框中的值填充文本框中的值

如何根据另一个文本框的值自动设置文本框的值

在初始加载时根据DropdropList中的值(由数据库填充)设置文本框

根据int值选择一个文本框

根据radioButton的值创建一个文本框

如何在表格中找到第一个文本框的值?

Datepicker选择的值始终位于第一个文本框中

C# 是否可以在不覆盖文本框的第一个输入值的情况下在一个文本框中获取两个输入文本框值?

删除对第一个文本框的关注

如果第一个文本框中有值,如何验证第二个文本框?

合并来自文本框的输入以自动填充另一个文本框

自动完成文本框第一个选项选择

Angular.js:通过单击按钮自动填充数据库中的文本框值

文本框值未保存到数据库

JSP的文本框值无法插入数据库

动态文本框值到数据库

如何根据另一个文本框值在jdeveleper的表中设置文本框只读?

MVC5 根据另一个文本框值动态禁用文本框

在文本框中输入文本时,我希望文本的第一个字母自动大写

使用PHP从数据库中预填充令牌输入文本框中的值

如何在 React js 中使文本框的第一个值不可编辑?

Jquery根据选择框填充文本框值

禁用文本框,取决于另一个文本框的值

如何使用数据库值创建自动完成文本框

如果文本框为空,则数据库中的自动空值

如何根据数据库中的下拉选择更改文本框值

如何根据从 php 组合框中选择的值在数据库中的文本框中显示该值?