Codeigniter 依赖输入文本编码点火器
您好,我正在使用codeigniter,我希望生成如下示例所示的相关输入文本: 我有三个字段numberphone、Name、Society,当用户输入numberphone时,我想自动填写Name和Society: 以下是Mysql中我的表的结构: 人员(身份证、电话号码、姓名、社会) 它的形式如下:这是我的观点: 景色Codeigniter 依赖输入文本编码点火器,codeigniter,text,input,types,Codeigniter,Text,Input,Types,您好,我正在使用codeigniter,我希望生成如下示例所示的相关输入文本: 我有三个字段numberphone、Name、Society,当用户输入numberphone时,我想自动填写Name和Society: 以下是Mysql中我的表的结构: 人员(身份证、电话号码、姓名、社会) 它的形式如下:这是我的观点: 景色 <table> <tr> <td valign="top">Telephone<
<table>
<tr>
<td valign="top">Telephone<span style="color:red;">*</span></td>
<td>
<input type="text" name="telephone" class="text" id="telephone"/>
<?php echo form_error('telephone'); ?>
</td>
</tr>
<tr>
<td valign="top">Usager<span style="color:red;">*</span></td>
<td>
<input type="text" name="usager" class="text" id="usager" readonly="readonly">
<?php echo form_error('nbcas'); ?>
</td>
</tr>
<tr>
<td valign="top">society<span style="color:red;">*</span></td>
<td>
<input type="text" name="society" class="text" id="society" readonly="readonly">
<?php echo form_error('nbcas'); ?>
</td>
</tr>
<td><input type="submit" value="Enregistrer"/></td>
</tr>
</table>
还有我的模特
function GetUsagerId ($telephone)
{
$this->db->select('name','society');
$this->db->where('numberphone',$telephone);
$query=$this->db->get('Person');
if($query->num_rows() > 0)
{
$row = $query->row();
return $row;
}
}
视图中的jquery代码
$('#telephone').keyup(function() {
var phone = $('#telephone').val();
var baseurl = "<?= base_url(); ?>";
$.ajax({
type : "POST",
url : baseurl+"index.php/main/GetUsager",
dataType: 'json',
data : phone,
success: function(data) {
$("#usager").append(data.row);
}
});
});
$(“#电话”).keyup(函数(){
var phone=$(“#电话”).val();
var baseurl=“”;
$.ajax({
类型:“POST”,
url:baseurl+“index.php/main/GetUsager”,
数据类型:“json”,
数据:电话,
成功:功能(数据){
$(“#usager”).append(data.row);
}
});
});
没有发生任何事情。在ajax请求代码中:
$.ajax({
type : "POST",
url : baseurl+"index.php/main/GetUsager",
dataType: 'json',
data : phone,
success: function(data) {
$("#usager").append(data.row);
}
您应该将$(“#usager”).append(data.row)
更改为$(“#usager”).val(data.row.name)
编辑:您还应该将数据:phone
更改为数据:“phone=“+phone
”
另外,我认为您应该引用
data.row.name
来读取名称。我已从data.row
更改为data.row.name
。检查如何格式化JSON输出 当我输入numberphone值时,我无法自动填充name et society字段。我添加了以下指令,但没有任何更改。您所说的意思是检查JSON输出的格式。查询行对象类似于$row={name:“foo”,society:“bar”}
。因此,通过对$data进行编码(它有$data['row']=$row
),您将拥有一个如下的javascript对象{row:{name:{foo],society:'bar}
。要读取名称,您应该像下面这样访问data.row.name
。是否调用了success函数?您是否尝试放置警报以确认调用了它?我将json farmat更改为:$rows=$this->structure->GetUsagerId($telephone)$数据=数组('row'=>$rows);标题('Content-Type:application/json',TRUE);echo json_编码($data);
$.ajax({
type : "POST",
url : baseurl+"index.php/main/GetUsager",
dataType: 'json',
data : phone,
success: function(data) {
$("#usager").append(data.row);
}