如果不处理,Javascript 代码在 Updatepanel 刷新后将无法工作。有几种方法可以处理此案。我更喜欢其中一个具有如下实现的功能;
<script language="javascript" type="text/javascript">
**Javascript code...**
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prm != null) {
prm.add_endRequest(function (sender, e) {
if (sender._postBackSettings.panelsToUpdate != null) {
**Duplicated Javascript code, same as above**
}
});
}
</script>
但是,我不想编写相同的 JavaScript 代码两次。那么,我该如何解决这个问题呢?
更新:我不想调用该部分中的函数。如何在节中定位函数而不重复?
最佳答案
将代码放入函数中,然后从两个地方调用该函数。
// The first call
doSomething();
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prm != null) {
prm.add_endRequest(function (sender, e) {
if (sender._postBackSettings.panelsToUpdate != null) {
// The second call
doSomething();
}
}
function doSomething() {
// Code goes here
}
如果函数需要来自调用它的地方的信息,请定义函数的参数(function doSomething(param1, param2)
等)并在调用它时传递参数( >doSomething("我是第一个","我是第二个")
,等等)。
关于javascript - 如何删除 ASP.NET 中 UpdatePanel 刷新时重复的 JavaScript 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41096292/