[英]how to call a function in code behind from an external .js file
我正在用dotnet开发一个网站。
//function to close SearchSchool.aspx
function CloseSchoolSearch()
{
//storing values
window.close();
//call function in code behind
}
这是外部.js文件中的javascript函数,使用此函数我将一些值存储在aspx页的某些隐藏控件中并关闭弹出窗口,之后我要在后面的代码中执行一个函数。并提醒一件事,我无法包含此函数.aspx页面,其中包含我想调用的方法。任何人都可以指导我如何执行此操作
据我了解的问题,您正在谈论2种截然不同的事情。 .ASPX页面在服务器上呈现,而javascript代码在客户端呈现。
从JS的aspx页面调用函数意味着您需要调用服务器以其他方式使用调用中提到的参数来呈现页面。
只有这样服务器才会重新渲染页面(也可以是ajax)并调用这些方法。
除此之外,服务器端代码没有发送到客户端。
在客户端:
您可以使用任何框架或实现自己的框架。 为了简单起见,我将使用jquery
/* attach a submit handler to the form */ $("#form_name").submit(function(event) { /* stop form from submitting normally */ event.preventDefault();
/* get some values from elements on the page: */
url ="<server url>";
var $inputs = $('#form_name :input');
var dataString="";
$inputs.each(function() {
if (this.type != "submit" && this.type != "button")
dataString += (this.name +"="+ $(this).val() +"&").trim();
});
/*Remove the & at the end of the string*/
dataString = dataString.slice(0, -1);
/* Send the data using post and put the results in a div */
$.post( url, dataString,
function( data ) {
}
);
只需添加其输出而不是dataString,serialize函数也将起作用。
我了解您想从外部加载的.js
文件中使用<script></script>
调用HTML页面中定义的javascript函数。
只要确保在加载外部JS时内部javascript函数可用即可。
如果要调用在HTML代码内定义的函数localFoo()
,请执行以下操作:
// Check for the function availability
if(typeof localFoo != undefined) {
localFoo(arg);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.