使用 jQuery 将 json 值返回到表单域
Using jQuery to return json values to a form field
我用我的代码创建了一个jsfiddle - 不是CSS部分只有PHP逻辑只是为了演示。
我想在 zip 字段中输入邮政编码 - 然后单击按钮后,它会查询地理编码 googlemaps 脚本并返回一个 json 对象 - 我只是在将此对象返回到表单字段时遇到问题。我可以在控制台日志中看到 json - 但是在将其传递回视图时我做错了什么。有什么想法吗?
http://jsfiddle.net/JxBQZ/2/
这是 js 文件
$('form').on('click','#geocode',function(event) {
event.preventDefault();
var zip = $('#geocode_field').val();
$.ajax({
type: "GET",
url: "/test/gmaps",
data: { zip: zip},
dataType: "json",
cache: true,
success: function(data){
console.log(data.street);
}
});
});
<form>
<label>Zip</label>
<input type="text" id="geocode_field" name="zip" /><button id="geocode">Search</button>
<label>Street 1</label>
<input type="text" id="street1" name="street1" />
<label>Street 2</label>
<input type="text" id="street2" name="street2" />
<label>Town</label>
<input type="text" id="town" name="town" />
<label>County</label>
<input type="text" id="county" name="county" />
</form>
您应该将dataType
设置为 json
而不是 jsonp
,因为您调用了自己的域。 JSONP用于跨域Ajax,它还需要差异返回格式。
dataType: "json",
希望这有帮助
不要使用
$.ajax()
方法,而是使用$.post()
方法。然后,它将更新您的视图部分。
尝试这样的事情:
$.post("/test/gmaps", { data: zip}, function(data) {
for (var key in data) {
$('#fetchdata').html(data.street);
}}, "json");
在这里,#fetchdata
是要接收数据的 ID,它可以是 span、输入框等。在查询中返回值时,请以json_encoded格式返回它。如:
function some(){
//your query
$data_to_return[] = something;
echo json_encode($data_to_return);
}
您可以在此处阅读有关$.post()
方法的更多信息
支持它...现在还为时过早。:(
$('form').on('click','#geocode',function(event) {
event.preventDefault();
var zip = $('#geocode_field').val();
$.ajax({
type: "GET",
url: "/test/gmaps",
data: { zip: zip},
dataType: "json",
cache: true,
success: function(data){
console.log(data.street);
$('#street1').val(data.street);
}
});
});
相关文章:
- JavaScript表单返回,但无法正常工作
- Ajax向表单返回false
- Javascript表单返回未定义的
- HTML表单返回并下载文件时显示进度掩码
- AngularJS表单返回undefined
- 在表单返回false后插入append
- 从ajax表单返回值
- 如何使用JavaScript/jQuery在没有AJAX的情况下获得表单返回
- MVC html开始表单返回JavaScript操作结果
- 联系表单返回空白页
- 在用户更正错误后,Jquery中没有提交表单(返回false;)
- 流星使用namedContext添加invalidkeys到AutoForm表单返回一个错误
- 条形表单返回丢失的参数
- JavaScript.表单返回意外的表单
- 需要帮助从HTML表单返回数据在新的HTML页面使用JavaScript
- Javascript中的表单返回一个"undefined"警报
- Ajax表单:返回的值错误
- PHP/Javascript搜索表单返回所有行,而不是匹配搜索词的行
- 表单返回false javascript后仍然提交
- Ajax表单返回错误