我认为有一个函数需要调用一个列表,以便在其中执行 ajax 调用。我正在使用的 API 有一个参数 List<>
在其论据中。这就是我需要它的原因。
是否可以传递 List<>
类型的参数?到 Javascript 函数?如果是,使用什么合适的语法?我用谷歌搜索,但还没有找到答案。
编辑:这是我的代码
Javascript 函数:
function DeleteRoom(RoomId, FloorId, userDevicesID) {
$.ajax({
beforeSend: function (xhr) {
xhr.setRequestHeader('verifySession', verifySession());
xhr.setRequestHeader('Authorization', '@HttpContext.Current.Session["BaseAuth"]');
},
url: "/api/Room/RemoveRoom?RoomId=" + RoomId + "&userDevicesId="+ userDevicesID,
type: "DELETE",
dataType: 'json',
success: function (data) {
// removing items from the view
}
});
}
调用使用该函数的弹窗:
arr.push(existingdevices[i].attrs.id); //array of IDs, can be empty
PopUpDeleteRoom(id, FloorId, arr);
API:
[HttpDelete]
public void RemoveRoom(int roomId, [FromUri]List<int> userDevicesId)
{
int currentUserId = SessionData.CurrentUser.UserID;
List<Equipment> equipmentsAssociated = equipmentRepository.FindMany(e => e.RoomID == roomId).ToList();
foreach (Equipment equipment in equipmentsAssociated)
{
equipment.RoomID = null;
equipmentRepository.Update(equipment);
equipmentDeviceRepository.DeleteAllEquipmentDeviceOfZwave(equipment.EquipmentID);
}
foreach (int userDeviceId in userDevicesId)
{
userDeviceRepository.Delete(userDeviceId);
//this generates a NullReferenceException that I will fix later
}
equipmentRepository.Save();
userDeviceRepository.Save();
roomRepository.Delete(roomId);
roomRepository.Save();
}
请问是否有针对此问题的解决方案或解决方法?
最佳答案
我假设在您的 javascript 中 List<>
是一个 Array
.
如果是这样的话,你可以用它做各种各样的事情:http://www.w3schools.com/js/js_arrays.asp
示例(调用此函数将为数组中的每个元素显示警报):
var alertAllElements = function (theArray) {
for(var x=0; x<theArray.length; x++)
alert(theArray[x]);
};
关于javascript - 将 List 类型的参数传递给 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23929505/