我需要为该字段创建一个表单:
id
输入id的值后,需要在数据库中匹配id,并且应该以其他形式填写从数据库中获取的值。
即,数据库中标题的值应以html的标题格式(输入类型=“文本”)填写。
此标题字段也将出现在id字段的同一页面上。
即,在提交id后会有一个id字段后跟一个提交按钮,将获取id的相关值,并将填入同一页面上的其他表单结构。
你能建议我怎么做。
帮助赞赏和感谢你的时间。
答案 0 :(得分:0)
使用jQuery.ajax
来执行ajax请求,而不是根据需要呈现响应。这是一个例子:
<form>
<input type='hidden' id='id'>
<input type='button' id='fetchData'>
<div id='content_placeholder'></div>
</form>
<script type='text/javascript'>
$(document).ready(function(){
$("#fetchData").click(function(){
var id = $('#id').val();
$.ajax({
type:'post',
dataType:'json',
url: '*backend url here*'
success: function(data, textStatus){
renderData(data);
//This will remove this button, so user will not be able
//press it two times
$("#fetchData").remove();
}
});
});
});
function renderData(data){
var placeholder = $('#content_placeholder');
//...perform operations on data....//
createInput('name_input','name',data.name).appendTo(placeholder);
createInput('description_input','description',data.name).appendTo(placeholder);
}
function createInput(id, name, value){
var result = $("<input>").attr({id:id, name:name}).val(value);
return result;
}
</script>
在你的后端,你必须使用json_encode
来以json兼容的方式编码数据。这是一个例子:
<?php
$result = array('name'=>'John Smith', 'description'=>'Unknown buddy');
echo json_encode($result);
?>
有关详细信息,请参阅jQuery.ajax,PHP json_encode。