function newedito() {
var localTime = new Date();
var year = localTime.getFullYear();
var month = localTime.getMonth() + 1;
var date = localTime.getDate();
var hours = localTime.getHours();
var minutes = localTime.getMinutes();
var seconds = localTime.getSeconds();
var x = document.getElementById('drdned').value;
var y = document.getElementById('txtned1').value;
var z = document.getElementById('txtned2').value;
var v = "Date : " + date + "-" + month + "-" + year + " Time : " + hours + ":" + minutes + ":" + seconds;
PageMethods.Ned(x, y, z, v, OnCallSumComplete, OnCallSumError);
function OnCallSumComplete(result) {
document.getElementById('updater').innerHTML = result;
}
function OnCallSumError() {
document.getElementById('updater').innerHTML = "Error";
}
}
<script src="Scripts/Site.js" language="javascript" type="text/javascript"></script>
当我把上面写的javascript放在我的aspx页面上时一切正常但是当我把这个函数代码放在外部Site.js文件页面方法被调用但是OnCallSumComplete()和OnCallSumError()不起作用时它们不会改变div的html('updater')。 这里的结果是一个字符串,它是“success msg”或“exception msg”。 请帮帮我。
这里显示的整个aspx文件非常大,这是包含id =“updater”div的div。
<div id="popUpDiv" style="display:none; border:10px solid rgba(0, 0, 0, .8); box-shadow: 0px 0px 200px 200px Black; position:fixed; top:10%; left:20%; right:20%; height:80%; min-width:60%; z-index: 10002;">
<div id="control" style=" background-color:rgba(0, 0, 0, .8); color:White; height:4%;">
<div style="color:#01A9DB; float:left; font-weight:700;">OWPOST-ECLIPSE</div>
<div style="position:static; right:0px; top:0px; float:right;">
<a style="color:White;" href="#" onclick="togglePopUp('popUpDiv'); return false;">EXIT</a>
</div>
</div>
<div id="updater" style=" background-color:White; overflow:scroll; height:96%;">
</div>
</div>
这是一个弹出式div,它显示在点击按钮上,其中有一个表单,使用来自服务器端的ajax,点击提交按钮功能newedito()应该将所有数据提交到pagemethod Ned(),这将添加数据到数据库,但是当我将js代码放在外部文件中时,数据会被添加到数据库中,但是newedito()方法不会显示返回字符串。 我应该告诉你,我有很多表格所以我准备了他们的html并将它们保存在数据库中,我根据需要显示“updater”格式,并通过javascript函数调用。 请帮忙。
我在我的母版页中包含Site.js。
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head runat="server">
<title>THE OPEN WEB POST</title>
<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
<style type="text/css">
.style1
{
font-size:x-large;
color: #FFFFFF;
}
.style2
{
text-decoration: none;
color:White;
}
.style3
{
color: #01A9DB;
}
#mynew
{
}
</style>
<script src="Scripts/Site.js" language="javascript" type="text/javascript"></script>
</head>
<body>
<form id="mynew" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
</asp:ScriptManager>
<div class="page" style="width: 100%; min-width:960px;">
我认为母版页的这一部分可以帮助你。
答案 0 :(得分:0)
尝试通过脚本管理器注册脚本,如下所示。我猜你的页面中没有正确解析脚本文件的路径。
<asp:ScriptManager ID="SM1" runat="server" EnablePageMethods="true">
<Scripts>
<asp:ScriptReference Path="~/Scripts/Site.js" />
</Scripts>
</asp:ScriptManager>