javascript - asp.net javascript mvc - 如何从内页获取 javascript 以从外页清除元素?
问题描述
我想要从“内部”mvc 表单调用的 javascript 单击事件来清除“外部”/“父”表单的元素,但单击清除不会产生任何结果(参见线框)。Javascript 适用于外部形式,但在内部形式的脚本文件引用中调用时不起作用,尽管我知道脚本已正确连接 b/c 脚本的其他行为正在发生。:
$("#clearField").on('click', function ()
{
document.getElementById("playerCardNumber").value = "";
});
外部/父 cshtml 页面的代码:
@model adminLte.Models.playerCardData
<section class="content">
<div class="inputPlayerInfo">
@using (Ajax.BeginForm("WriteToGroup", "IT", new AjaxOptions //action, view
{
HttpMethod = "GET",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "innerPlayerInfoForm", //css tag (see below)
OnComplete = "ReturnData",
OnBegin = "ClearResults",
LoadingElementId = "divloading"
}))
{
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="divTable playerGroupTbl">
<div class="divTableBody">
<div class="divTableRow">
@Html.LabelFor(model => model.playerCardNumber , htmlAttributes: new { @class = "divTableCell" })
<div class="divTableCell">
@Html.EditorFor(model => model.playerCardNumber, new { htmlAttributes = new { @id= "playerCardNumber", @type ="password", @class = "form-control" } })
@Html.ValidationMessageFor(model => model.playerCardNumber , "", new { @class = "text-danger" })
</div>
</div>
</div>
</div>
<br />
<input type="submit" name="Command" value="Lookup Player" class="btn btn-default btn-lg" />
<button type="button" class="btn btn-default btn-lg" id="clearField" >Clear Previous Swipe</button>
}
</div>
<br />
@*form is inserted here*@
<div id="divloading" style="display:none">
<img src="~/images/giphy.gif" /> </div>
<div id="innerPlayerInfoForm"></div>
</section>
@section scripts{
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script>
function ReturnData()
{
$('#innerPlayerInfoForm').show();
}
function ClearResults()
{
$('#innerPlayerInfoForm').empty();
}
$('#playerEvent').selectpicker({
size: 4
});
$("#clearField").on('click', function () {
document.getElementById("playerCardNumber").value = "";
});
</script>
}
部分视图的代码:
@model adminLte.Models.eventModelParent
<div class="inputPlayerInfo">
@using (Ajax.BeginForm("sproc_PlayerGroupInsert", "IT", new AjaxOptions //action, view
{
HttpMethod = "GET",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "innerPlayerInfoForm", //css tag (see below)
OnComplete = "ReturnData",
OnBegin = "ClearResults"
}))
{
@Html.AntiForgeryToken()
HtmlHelper.UnobtrusiveJavaScriptEnabled = true;
<div class="divTable playerGroupTbl">
<div class="divTableBody">
<div class="divTableRow">
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="divTableCell">
Event:
</div>
<div class="divTableCell">
@foreach (var _event in Model.vips)
{
@Html.RadioButtonFor(m => m.events.SelectedEvent, _event.eventId,
_event.eventchecked == 1 ? new { @checked = "checked" } : null
) @:  @_event.eventName
<br />
}
@Html.ValidationMessageFor(model => model.events.SelectedEvent , "", new { @class = "text-danger" })
</div>
</div>
<div class="divTableRow" >
<div class="divTableCell"> Player ID: </div>
@foreach (var item in Model.playerData)
{
<div class="divTableCell">
<input style="border:none;background:transparent;" id="PlayerID" name="PlayerID" value=@item.PlayerID readonly>
</div>
}
</div>
<div class="divTableRow someDivXYZ">
<div class="divTableCell"> Player First Name: </div>
@foreach (var item in Model.playerData)
{
<div class="divTableCell">
<input style="border:none;background:transparent;" id="playerFirstName" name="playerFirstName" value=@item.playerFirstName readonly>
</div>
}
</div>
<div class="divTableRow someDivXYZ">
<div class="divTableCell"> Player Last Name: </div>
@foreach (var item in Model.playerData)
{
<div class="divTableCell">
<input style="border:none;background:transparent;" id="playerLastName" name="playerLastName" value=@item.playerLastName readonly>
</div>
}
</div>
</div>
</div>
<br />
<input type="submit" id="updatePlayerGroup" value="Write This Player to Group" class="btn btn-default btn-lg" />
<button onclick="ClearResults()" class="btn btn-default btn-lg" id="clearField">Clear Selected Data</button>
}
</div>
<div id="PlayerGroupInsertStatus"></div>
@Scripts.Render("~/scripts/renderJS.js")
外部js文件:
$('#playerEvent').selectpicker({
size: 4
});
$('#formEvent_playerEvent').selectpicker({
size: 4
});
function ReturnData() {
$('#PlayerGroupInsertStatus').show();
}
function beforeSend() {
var PlayerID = document.getElementById("PlayerID").value;
}
$("#clearField").on('click', function ()
{
document.getElementById("playerCardNumber") = "";
});
非常感谢任何帮助 - 在此先感谢!
解决方案
推荐阅读
- c# - 如何在 C# 中从 SSL 证书解码 SCT 列表
- swift - 在哪里可以找到最新的 Movesense Showcase 应用程序源?
- css - 防止角材质 css 样式传播到其他组件
- generics - Dart 2.7 通用扩展
- javascript - 如何在鼠标悬停时为页面上的所有 div 添加悬停效果?
- mysql - 如何每天将数据从 Cloud SQL 导出到 BigQuery?
- rest - 当正文数据与数据库中的当前状态相同时,使用哪个 REST HTTP 状态码?
- python - 视觉工作室代码远程ssh无法调试python
- arduino - PN532 V3 + Arduino UNO + libnfc 错误(错误:无法打开 NFC 设备:pn532_uart:/dev/ttyUSB0:115200)
- ruby-on-rails - Rails webpacker 无法从 nvm 找到节点版本