这是我在做什么:试图ajax的成功里面使用时,“.replace()是不是一个函数”
function AddSupervisor()
{
var employeeID = $('#ID').val();
var supervisorId = $('#SupervisorId').val();
var supervisors = '';
if (supervisorId > 0)
{
$.ajax({
url: '@Url.Action("AddSupervisor", "Contact")',
type: 'GET',
dataType: 'json',
data: { EmployeeID: employeeID, SupervisorID: supervisorId },
success: function(data) {
supervisors = data;
$('#divSupervisorList').text(supervisors.replace(",", "<br />"));
},
error: function(data) {
}
});
}
}
这是错误:
Uncaught TypeError: supervisors.replace is not a function
如果我这样做这样的:
$('#divSupervisorList').text(data);
的结果在屏幕上是这样的:
John Foo, Jane Bar
我要的是:
John Foo
Jane Bar
但我无法用<br />
更换,
。起初,我尝试过:
$('#divSupervisorList').text(data.replace(",", "<br />"));
而当没有工作,我去使用一个字符串,在ajax调用之前声明。我也尝试使用.split()
,但得到了同样的错误。
不知道我在做什么错。
UPDATE:
正如许多人所指出的那样,我的返回数据不是字符串,而是一个目标:
(4) ["Adam Brown", "Karl Walser", "Jeremy Smith", "Nathan Graham"]
0 : "Adam Brown"
1 : "Karl Walser"
2 : "Jeremy Smith"
3 : "Nathan Graham"
所以,现在我得弄清楚如何将这种阵列分成字符串:-)
确保数据是一个字符串。如果数据是一个object/array/null/undefined,则替换函数对于它们中的任何一个都不存在。 – adelineu
'dataType:'json',',尝试在替换之前使用'.toString()'? – Hodrobond