从数据库显示值到HTML输入标记

时间:2013-05-02 11:19:41

标签: jquery html database

我有一个下拉列表(HTML Select标签)和一个HTML表单。如下 -

选择 - >

<select name="select-native-1" id="select-native-1" onChange="dbToForm(this)">
          <option value="1">Employee 1</option>
          <option value="2">Employee 2</option>
          <option value="3">Employee 3</option>
          <option value="4">Employee 4</option>
        </select>

表格 - &gt;

<form>
        <label for="e_name">Name</label>
        <input name="e_name" id="e_name" value="" type="text" data-theme="a">
        <label for="date">Date</label>
        <input name="date" id="date" value="" type="date" data-theme="a">
        <label for="gender">Gender</label>
        <select name="gender" id="gender" data-role="slider" data-theme="a" data-inline="true">
          <option value="male">Male</option>
          <option value="female">Female</option>
        </select>
        <label for="address">Address</label>
        <textarea name="address" id="address" value="" type="text" data-theme="a"></textarea>
        <br>
        <br>
        <label for="image">Add Image</label>
        <input name="image" id="image" value="" type="file" data-theme="a">
        <br>
        <br>
        <label for="multimedia">Add Multimedia</label>
        <input name="multimedia" id="multimedia" value="" type="file" data-theme="a">
        <br>
        <br>
        <input value="Submit" data-role="button" type="submit">

当我从Select标签中选择一个值时,预期的功能是,根据所选项目的ID,检索数据库中的值。我是在嵌入JS函数的PHP的帮助下进行这种检索的。

Javascript - &gt;

function dbToForm(id) {
var id_val = id.value;
var name = '';
var url = "http://localhost:81/PG_crud_experiment1/retrieve.php?id="+id_val; 
$.getJSON(url, function(json) {
               $.each(json, function(i,v) {    

                 name += v.name;   
                 alert (name);

                });
                         $("#e_name").html(name);   
       });

};

在这里,我能够从DB获取值到我的JS函数并将其存储在变量中。该变量必须推送到我的HTML表单字段。 #e_name<input>代码,我无法在该字段中显示已审核的值。 有一个<textarea>,值打印没有任何问题。

这是<input>代码的限制吗?如果是,可以用什么作为标签的替代品?

请注意:检索到表单中的值仅用于编辑和更新。即,可以编辑表格中填充的值并将其更新到数据库中。

3 个答案:

答案 0 :(得分:5)

输入标签没有HTML,它们有值。

$("#e_name").val(name);

.html()用于填写<tag></tag>之间的元素。输入没有那样的匹配标签,那么HTML会去哪里?

答案 1 :(得分:3)

您需要使用.val()

$("#e_name").val(name);

http://api.jquery.com/val/

答案 2 :(得分:2)

Textarea与其他输入控件的工作方式不同。请改用:

$("#e_name").val(name)