Javascript 无法读取未定义JSON响应Symfony的属性fiscalName
当您尝试将变量作为索引而不是完整类型传递时,会生成失败:Javascript 无法读取未定义JSON响应Symfony的属性fiscalName,javascript,jquery,json,ajax,symfony-3.2,Javascript,Jquery,Json,Ajax,Symfony 3.2,当您尝试将变量作为索引而不是完整类型传递时,会生成失败: new:1668 Uncaught TypeError: Cannot read property 'fiscalName' of undefined at Object.success (new:1668) at i (jquery.min.js:2) at Object.fireWith [as resolveWith] (jquery.min.js:2) at A (jquery.min.js:4) at XMLHttpReques
new:1668 Uncaught TypeError: Cannot read property 'fiscalName' of undefined at Object.success (new:1668) at i (jquery.min.js:2) at Object.fireWith [as resolveWith] (jquery.min.js:2) at A (jquery.min.js:4) at XMLHttpRequest.<anonymous> (jquery.min.js:4)
控制员的回答
[
{
"id" : 3,
"taxId" : 1,
"fiscalName" : "drift sl",
"tradename" : "drift",
"residence" : "espa\u00f1a",
"postalCode" : "10600",
"city" : "plasencia",
"province" : "c\u00e1ceres",
"country" : "espa\u00f1a",
"telephoneNumber" : "666666666",
"contactPerson" : "juan",
"contactTelephone" : "666777777",
"email" : "drift@drift",
"twitter" : "drift",
"facebook" : "drift",
"ccc" : "111",
"iban" : "11111111111111",
"bic" : "11111111111",
"bank" : "santander",
"commands" : "ingreso pedido",
"provider" : "true",
"balance" : 10,
"routesid" : {
"id" : 1,
"name" : "valle",
"zone" : "valle del jerte",
"employeeid" : {
"id" : 1,
"name" : "pedro",
"email" : "pedro@pedro.com",
"telephoneContact" : "666666666",
"businessAgent" : "true",
"nif" : "11111111P",
"handicap" : 1,
"__initializer__" : null,
"__cloner__" : null,
"__isInitialized__" : true
},
"__initializer__" : null,
"__cloner__" : null,
"__isInitialized__" : true
},
"className" : null
}
]
JS函数
function buscar(letter) {
$.ajax({
type : "GET",
url : "{{ path('ajax_client') }}",
data : {"data" : letter},
contentType : 'application/json',
dataType : "json",
success : function (data) {
var arr = $.map(data, function (el) {
return el
});
var parsed = JSON.parse(arr);
for (var i = 0; i <= parsed.length; i++) {
$("#match").append('<li id=' + i + '>' + parsed[i].fiscalName + '</li>');
}
$("#match li").on('click', function () {
var idElemet = $(this).attr('id');
console.log(idElemet);
$("#search-input").val($(this).text());
$('input[name="tin"]').val(parsed[idElemet].taxId);
$('input[name="fiscal_name"]').val(parsed[idElemet].fiscalName);
$('input[name="postal_code"]').val(parsed[idElemet].postalCode);
$('input[name="city"]').val(parsed[idElemet].city);
$('input[name="province"]').val(parsed[idElemet].province);
$('input[name="country"]').val(parsed[idElemet].country);
});
}
});
}
功能客车(字母){
$.ajax({
键入:“获取”,
url:“{path('ajax_客户端')}}”,
数据:{“数据”:字母},
contentType:'应用程序/json',
数据类型:“json”,
成功:功能(数据){
var arr=$.map(数据、函数(el){
返回el
});
var parsed=JSON.parse(arr);
对于(VarI=0;我看了一下VarI=0;iThanks!现在,如果您将这个“问题”标记为已解决(并且如果您希望对帮助找到解决方案的人进行评分),它的工作会很好。
[
{
"id" : 3,
"taxId" : 1,
"fiscalName" : "drift sl",
"tradename" : "drift",
"residence" : "espa\u00f1a",
"postalCode" : "10600",
"city" : "plasencia",
"province" : "c\u00e1ceres",
"country" : "espa\u00f1a",
"telephoneNumber" : "666666666",
"contactPerson" : "juan",
"contactTelephone" : "666777777",
"email" : "drift@drift",
"twitter" : "drift",
"facebook" : "drift",
"ccc" : "111",
"iban" : "11111111111111",
"bic" : "11111111111",
"bank" : "santander",
"commands" : "ingreso pedido",
"provider" : "true",
"balance" : 10,
"routesid" : {
"id" : 1,
"name" : "valle",
"zone" : "valle del jerte",
"employeeid" : {
"id" : 1,
"name" : "pedro",
"email" : "pedro@pedro.com",
"telephoneContact" : "666666666",
"businessAgent" : "true",
"nif" : "11111111P",
"handicap" : 1,
"__initializer__" : null,
"__cloner__" : null,
"__isInitialized__" : true
},
"__initializer__" : null,
"__cloner__" : null,
"__isInitialized__" : true
},
"className" : null
}
]
function buscar(letter) {
$.ajax({
type : "GET",
url : "{{ path('ajax_client') }}",
data : {"data" : letter},
contentType : 'application/json',
dataType : "json",
success : function (data) {
var arr = $.map(data, function (el) {
return el
});
var parsed = JSON.parse(arr);
for (var i = 0; i <= parsed.length; i++) {
$("#match").append('<li id=' + i + '>' + parsed[i].fiscalName + '</li>');
}
$("#match li").on('click', function () {
var idElemet = $(this).attr('id');
console.log(idElemet);
$("#search-input").val($(this).text());
$('input[name="tin"]').val(parsed[idElemet].taxId);
$('input[name="fiscal_name"]').val(parsed[idElemet].fiscalName);
$('input[name="postal_code"]').val(parsed[idElemet].postalCode);
$('input[name="city"]').val(parsed[idElemet].city);
$('input[name="province"]').val(parsed[idElemet].province);
$('input[name="country"]').val(parsed[idElemet].country);
});
}
});
}
<div class="ibox-content">
<input type="text" placeholder="Buscar..." data-provide="typeahead_2"
onkeyup="buscar($(this).val())" name="query" id="search-input"
autocomplete="off" class="typeahead_2 form-control"/>
<div>
<ul id="match"></ul>
</div>
</div>