У меня есть функция JavaScript с 4 параметрами
function GetEmpDetails(EmpID, ApplicationID, ActionID, ApplicationSubID)
{
$.ajax({
type: "POST",
url: '/TransController/GetEmpInformation',
data: { "EmpID": JSON.stringify(EmpID), "ApplicationID": ApplicationID, "ActionID": ActionID, "ApplicationSubID": ApplicationSubID },
dataType: "json",
beforeSend: function () {
},
success: function (data) {
DisplayDetails(data);
},
error: function (result) {
}
});
}
Я хочу переопределить одну и ту же функцию с одним другим параметром. что-то ниже
function GetEmpDetails(EmpID, ApplicationID, ActionID, DateOfJoining)
{
$.ajax({
type: "POST",
url: '/TransController/GetEmpInformation',
data: { "EmpID": JSON.stringify(EmpID), "ApplicationID": ApplicationID, "ActionID": ActionID, "DateOfJoining": DateOfJoining},
dataType: "json",
beforeSend: function () {
},
success: function (data) {
DisplayDetails(data);
},
error: function (result) {
}
});
}
Кто-то, пожалуйста, скажите, можно ли это сделать и как с помощью какого-то примера кода?
Вы можете передавать данные как объект
function GetEmpDetails(data)
{
$.ajax({
type: "POST",
url: '/TransController/GetEmpInformation',
data: data,
dataType: "json",
beforeSend: function () {
},
success: function (data) {
DisplayDetails(data);
},
error: function (result) {
}
});
}
Применение
GetEmpDetails({EmpID: "", ..., ApplicationSubID: ""})
GetEmpDetails({EmpID: "", ..., Whatever: ""})
Как насчет использования дополнительных параметров (очень похоже на python **kwargs
?
function GetEmpDetails(EmpID, ApplicationID, ActionID, AdditionalParameters)
{
var data = AdditionalParameters;
$.extend(data, { "EmpID": JSON.stringify(EmpID), "ApplicationID": ApplicationID, "ActionID": ActionID})
$.ajax({
type: "POST",
url: '/TransController/GetEmpInformation',
data: data,
dataType: "json",
beforeSend: function () {
},
success: function (data) {
DisplayDetails(data);
},
error: function (result) {
}
});
}
Теперь вызовите свою функцию одним из двух способов:
GetEmpDetails(1, 1, 1, {"DateOfJoining": DateOfJoining});
GetEmpDetails(1, 1, 1, {"ApplicationSubID": 1});