gpt4 book ai didi

javascript - 如何将我的 javascript 文件加载到嵌套在 View 中的局部 View 中? MVC5

转载 作者:行者123 更新时间:2023-11-30 17:07:58 25 4
gpt4 key购买 nike

我有两个自定义的 javascript 文件(viewJscript.js 和 partialJscript.js)。在 View 中,我简单地说:

<script type="text/javascript" src="~/Scripts/jquery-1.10.2.js"></script>
<script src="~/Scripts/viewJscript.js"></script>

这很好用。现在,我正尝试在嵌套在 View 内的部分 View 中执行相同的操作:

    <script type="text/javascript" src="~/Scripts/jquery-1.10.2.js"></script>
<script src="~/Scripts/partialJscript.js"></script>

而且它不起作用。 那么我应该怎么做才能在局部 View 中加载 partialJscript.js?

我忘了说局部 View 是动态的,在从 View 中单击按钮时打开

编辑 这是我在 partialJscript.js 文件中的代码:

$(function () {
var divSensorNames = $("#sensorNames");
$('.webgrid2-table th:first-child, .webgrid2-table td:first-child').hide();

$('.webgrid2-table th:nth-child(2), .webgrid2-table td:nth-child(2)').hide();

$('.webgrid2-table th:nth-child(3), .webgrid2-table td:nth-child(3)').hide();

$('#AddNewSensor').on('click', function () {
$('#sensorList').load('@Url.Action("ChooseSensorList", "PredefinedViews")');
});

$('.editSensorMode').on("click", function () {
var tr = $(this).parents('tr:first');
//var SensorID = tr.find("#SensorID").html();
var PredefinedViewItemID = tr.find("#PredefineViewsItemID").html();
var urlEditModes = "@Url.Action("EditSensorMode", "PredefinedViews", new { pviId = "PredefinedViewItemID" })";
//urlEditModes = urlEditModes.replace("SensorID", SensorID);
urlEditModes = urlEditModes.replace("PredefinedViewItemID", PredefinedViewItemID);
$('#sensorList').load(urlEditModes);
});

$(".sensor-delete-table").on("click", function () {

var tr = $(this).parents('tr:first');
var PredefineViewsItemID = tr.find("#PredefineViewsItemID").html();
var PredefineViewID = tr.find("#PredefineViewID").html();
var amount = parseInt($("[data-id='" + PredefineViewID + "']").text());
//amount = amount + anyNumber; This also works!
//var rowCountBefore = $('.webgrid2-table tr').length;

var flag = confirm('@Html.Localize("deleteCheck")');
var urlShowNewSensors = "@Url.Action("ShowSensorNames", "PredefinedViews", new { predefinedViewID = "PredefineViewID" })";
urlShowNewSensors = urlShowNewSensors.replace("PredefineViewID", PredefineViewID);
if (PredefineViewID != "" && flag) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: '@Url.Action("DeleteSensor", "PredefinedViews")',
data: JSON.stringify({ pviID: PredefineViewsItemID, pID: PredefineViewID }),
dataType: "json",
complete: function (result) {

var urlShowSensors = "@Url.Action("ShowSensorNames", "PredefinedViews", new { predefinedViewID = "PredefID" })";
urlShowSensors = urlShowSensors.replace("PredefID", PredefineViewID);
$(divSensorNames).load(urlShowSensors);

amount--;
$("[data-id='" + PredefineViewID + "']").text(amount.toString());
});
}
});
});

最佳答案

换句话说,您正在使用 AJAX 引入局部 View 的 HTML。出于安全原因,浏览器不允许运行动态插入的 HTML 中的脚本标记。您要么必须在主视图中包含脚本,要么在 AJAX 回调中通过 JavaScript 动态加载脚本。您可以使用 Require.js 或 Modernizr.load 之类的东西来做到这一点。

关于javascript - 如何将我的 javascript 文件加载到嵌套在 View 中的局部 View 中? MVC5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27568318/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com