Перезагрузить javascript на странице обратной передачи бритвы - PullRequest
0 голосов
/ 23 сентября 2018

У меня есть страница бритвы, и при обратной передаче, если состояние модели недопустимо, проверка JQuery сработает.

Теперь у меня есть пользовательская функция или файл .js, который мне нужно либо перезагрузить, либо запустить 1 функциюна обратной передаче, как это сделать?

Невозможно найти прямые ответы, так как большинство из них говорят, что для его запуска требуется код на стороне сервера.Пожалуйста, предложите.

Как позвонить "callFN ();"на обратной передаче.

<html>
<head>
    <script src="~/lib/jquery/dist/jquery.js"></script>
    <script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
    <script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
</head>

<form method="post">
    <input type="hidden" asp-for="AppUser.Id" />
    <input type="hidden" asp-for="pageRet" />
    <div class="form-group">
        <label class="control-label">First Name</label>
        <input asp-for="user.FName" class="form-control required" />
        <span asp-validation-for="user.FName" class="text-danger"></span>
    </div>

    <div class="form-group">
        <label class="control-label">Last Name</label>
        <input asp-for="user.LName" class="form-control required" />
        <span asp-validation-for="user.LName" class="text-danger"></span>
    </div>

    <div class="form-group">
        <input type="submit" value="Save" class="btn btn-primary" />
    </div>
</form>

<script>
$(document).ready(function () {

    function callFN() {
        alert("My Call");
    }

    //called on page load, but how to call this on postback
    callFN();
});
</script>

В соответствии с запросом здесь указан код контроллера:

[Authorize(Roles = "Administrator")]
public class EditUserModel : PageModel
{
private readonly ApplicationDbContext _context;
private readonly UserManager<AppUser> _userManager;

[BindProperty]
public string pageRet { get; set; }
[BindProperty]
public List<HostelUserHistory> huHistory { get; set; }

public EditUserModel(ApplicationDbContext context, UserManager<AppUser> userManager)
{
    _context = context;
    _userManager = userManager;
}

public async Task<IActionResult> OnGetAsync(string id)
{
    huHistory = new List<UserHistory>();
    pageRet = HttpContext.Request.Query["ret"].ToString();
    if (id == null)
    {
        return NotFound();
    }

    huHistory = await _context.UserHistory
                .Where(h => h.AppUserId == AppUser.Id)
                .ToListAsync();
    ViewData["huHistory"] = huHistory;

    return Page();
}

public async Task<IActionResult> OnPostAsync()
{
    if (!ModelState.IsValid)
    {
        return Page();
    }

    //do some other thing
    return Redirect(pageRet);
}

}
...