从C调用JavaScript函数# Javascript.js C#文件
请参考上面的代码,并建议我从C#..aspx文件的头部分调用JavaScript函数从C调用JavaScript函数# Javascript.js C#文件,c#,javascript,asp.net,function,C#,Javascript,Asp.net,Function,请参考上面的代码,并建议我从C#..aspx文件的头部分调用JavaScript函数 如果您想在C#中调用JavaScript函数,这将帮助您: public string functionname(arg) { if (condition) { Page page = HttpContext.Current.CurrentHandler as Page; page.ClientScript.RegisterStartupScript(
如果您想在C#中调用JavaScript函数,这将帮助您:
public string functionname(arg)
{
if (condition)
{
Page page = HttpContext.Current.CurrentHandler as Page;
page.ClientScript.RegisterStartupScript(
typeof(Page),
"Test",
"<script type='text/javascript'>functionname1(" + arg1 + ",'" + arg2 + "');</script>");
}
}
公共字符串函数名(arg)
{
如果(条件)
{
Page Page=HttpContext.Current.CurrentHandler作为页面;
page.ClientScript.RegisterStartupScript(
类型(第页),
“测试”,
函数名1(“+arg1+”,“+arg2+”);”;
}
}
这可能对您有所帮助:
<script type="text/javascript">
function Showalert() {
alert('Profile not parsed!!');
window.parent.parent.parent.location.reload();
}
function ImportingDone() {
alert('Importing done successfull.!');
window.parent.parent.parent.location.reload();
}
</script>
if (SelectedRowCount == 0)
{
ScriptManager.RegisterStartupScript(this, GetType(), "displayalertmessage", "Showalert();", true);
}
else
{
ScriptManager.RegisterStartupScript(this, GetType(), "importingdone", "ImportingDone();", true);
}
函数Showalert(){
警报('Profile not parsed!!');
window.parent.parent.parent.location.reload();
}
函数导入完成(){
警报('导入成功。!');
window.parent.parent.parent.location.reload();
}
如果(SelectedRowCount==0)
{
RegisterStartupScript(this,GetType(),“displayalertmessage”,“Showalert();”,true);
}
其他的
{
RegisterStartupScript(this,GetType(),“importingdone”,“importingdone();”,true);
}
您可以使用我的组织提供的开源库,从c#调用javascript函数:
string javascriptModule=@”
module.exports=(回调,x,y)=>{//module必须导出一个将回调作为其第一个参数的函数
var result=x+y;//您的javascript逻辑
回调(null/*如果发生错误,请提供错误对象或消息*/,result);//完成后调用回调。
}";
//调用javascript
int result=await StaticNodeJSService.InvokeFromStringAsync(javascriptModule,args:new object[]{3,5});
//结果==8
断言。相等(8,结果);
该库还支持直接从.js文件调用。假设您有文件C:/My/Directory/exampleModule.js
包含:
module.exports=(回调,消息)=>callback(null,消息);
您可以调用导出的函数:
string result = await StaticNodeJSService.InvokeFromFileAsync<string>("C:/My/Directory/exampleModule.js", args: new[] { "test" });
// result == "test"
Assert.Equal("test", result);
string result=wait StaticNodeJSService.InvokeFromFileAsync(“C:/My/Directory/exampleModule.js”,args:new[]{“test”});
//结果==“测试”
断言相等(“测试”,结果);
我不明白你的意思。是否要在C#代码文件中调用js函数?还是将代码文件函数转换为JS?
public string YourScript = "";
public string functionname(arg)
{
if (condition)
{
YourScript = "functionname1(arg1,arg2);";
}
}
public string functionname(arg)
{
if (condition)
{
Page page = HttpContext.Current.CurrentHandler as Page;
page.ClientScript.RegisterStartupScript(
typeof(Page),
"Test",
"<script type='text/javascript'>functionname1(" + arg1 + ",'" + arg2 + "');</script>");
}
}
<script type="text/javascript">
function Showalert() {
alert('Profile not parsed!!');
window.parent.parent.parent.location.reload();
}
function ImportingDone() {
alert('Importing done successfull.!');
window.parent.parent.parent.location.reload();
}
</script>
if (SelectedRowCount == 0)
{
ScriptManager.RegisterStartupScript(this, GetType(), "displayalertmessage", "Showalert();", true);
}
else
{
ScriptManager.RegisterStartupScript(this, GetType(), "importingdone", "ImportingDone();", true);
}
string result = await StaticNodeJSService.InvokeFromFileAsync<string>("C:/My/Directory/exampleModule.js", args: new[] { "test" });
// result == "test"
Assert.Equal("test", result);