Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 单击客户端上的ASP.NET按钮_C#_Asp.net - Fatal编程技术网

C# 单击客户端上的ASP.NET按钮

C# 单击客户端上的ASP.NET按钮,c#,asp.net,C#,Asp.net,我有问题,任何帮助都将不胜感激。我希望我能解释清楚这一点,但如果我不只是让我知道,我会在一段时间。这是用C#编写的,我在“OnClientClick”部分有一个调用javascript函数“javascript()”的按钮,在“OnClick”部分有一个“if语句”,其中第一部分类似于OnClientClick函数,第二部分表示与OnClientClick无关的不同代码 DefaultPage.aspx: <asp:Button ID="Button1" runat="server" Te

我有问题,任何帮助都将不胜感激。我希望我能解释清楚这一点,但如果我不只是让我知道,我会在一段时间。这是用C#编写的,我在“OnClientClick”部分有一个调用javascript函数“javascript()”的按钮,在“OnClick”部分有一个“if语句”,其中第一部分类似于OnClientClick函数,第二部分表示与OnClientClick无关的不同代码

DefaultPage.aspx:

<asp:Button ID="Button1" runat="server" Text="Button" 
 OnClick="Button1_OnClick" 
 OnClientClick="JavaScript()"  />

这个javascript函数来自我在这个“DefaultPage”上加载的另一个Web控件。在我在Button1_OnClick中添加“if语句”之前,这对我来说非常有效。最初我只有“if语句”的第一部分,现在我需要添加它的第二部分。我怎样才能做到这一点。我尝试了button1.OnClientClick,但它只在页面加载时起作用。我需要先确定“a”的值,然后继续。对不起,如果我不清楚,但我可以回答任何问题。非常感谢。我的目标是从我的asp.net按钮中删除“OnClientClick=JavaScript”,并在if语句中调用该函数。

我不确定我是否理解您的问题,似乎您想从后面的代码中执行JavaScript代码。在代码隐藏中使用ScriptManager并从那里执行javascript怎么样?如下

    // write your onclientclick code here
    ScriptManager.RegisterStartupScript(this, typeof(string), "JAVA_SCRIPT", "your javascript() function code here", true);

你犯了什么错误?If在C#中未大写

编辑:

根据这些评论,我认为你最好完全从客户的角度出发

<script type="text/javascript">
function NewFunction(){
    var a = getValueOfA();
    if (a === "1")
    {
        JavaScript();
    }
    else if ( a==="2" )
    {
        //other code
    }
}
</script>

<asp:Button ID="Button1" runat="server" Text="Button" 
 OnClientClick="NewFunction()"  />

函数NewFunction(){
var a=getValueOfA();
如果(a=“1”)
{
JavaScript();
}
否则,如果(a==“2”)
{
//其他代码
}
}

感谢您的回复。当我使用ScriptManager时,我可以将它添加到调用按钮单击的代码后面?我只需要为if语句的一部分调用JavaScript函数。再次感谢!我得到的错误是函数“JavaScript()”为“null或未定义”。当它进入“if语句”的第二部分时会发生这种情况,因为“JavaScript()”函数中的变量与“if语句”的第二部分无关,它们只与第一部分相关。谢谢。所以,这意味着当a==“1”时,您的代码会正确执行?是的,当我在asp按钮中有“OnClientClick=JavaScript()”时,请参阅新建议的答案(注释中的代码不起作用)。本质上,您可以将现有的javascript函数包装到客户端。无需让服务器执行超出必要的操作。如果您仍然需要访问服务器端,请使用此帖子。。。抱歉,如果我弄糊涂了,那么JavaScript()函数来自一个Web控件,我正在加载页面的DefaultPge上。
<script type="text/javascript">
function NewFunction(){
    var a = getValueOfA();
    if (a === "1")
    {
        JavaScript();
    }
    else if ( a==="2" )
    {
        //other code
    }
}
</script>

<asp:Button ID="Button1" runat="server" Text="Button" 
 OnClientClick="NewFunction()"  />