I'm using ASP.NET MVC and AngularJS as my framework. I've a link which send request to MCV Action and finally gets forwarded to view. This view has registered JavaScript File which loads angular.element(document).ready(function (e){} function. Basically I'm trying to create a if else statement inside angular.element(document).ready. based on myparam=true. How can I do it?
Link -
"<h7>" + "" + "<a target=\"_blank\" href='/Submission/EditSubmissionFile?id=" + SubmissionID + "&myparam=true" +"'>" + "Add Attachment" + "</a><br></h7>" +
AngularJS Javascript File -
mainApp.controller('editSubmissionFileController', ['$scope', '$location', '$http', 'viewDataService', 'utilityService', '$window', 'constants', '$timeout', 'constants', 'adComplianceUtility', 'submissionRuleService',
function ($scope, $location, $http, viewDataService, utilityService, $window, constants, $timeout, constants, adComplianceUtility, submissionRuleService) {
angular.element(document).ready(function (e) {
// How to make this conditional based on parameter passed from Action or html link?
$scope.$broadcast('ShowFileUpload', {
SubmissionID: $scope.model.data.SubmissionID,
Show: true,
Callback: function (data) {
$scope.onFileUploadSuccessful(data);
}
})
});
}
Action -
public ActionResult EditSubmissionFile(int id)
{
// We can only see what we are allowed
UserContext.TestSubmissionExists(id);
UserContext.TestSubmissionAccess(id, AccessRightEnum.ViewSubmissions);
var model = _submissionSvc.GetSubmissionViewModel(id);
return View("EditSubmissionFile", model);
}
Adding a simple window.location.href and check if parameter exists in URL does the job. Sometimes simple is better. Thank you.
angular.element(document).ready(function (e) {
// Check if URL contains a parameter value to restrict default pageload function.
if (window.location.href.indexOf("myparam=true") > -1)
{
$scope.$broadcast('ShowFileUpload', {
SubmissionID: $scope.model.data.SubmissionID,
Show: true,
Callback: function (data) {
$scope.onFileUploadSuccessful(data);
}
})
}
});
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.