javascript OnClientClick函数中无法识别服务器端代码

javascript OnClientClick函数中无法识别服务器端代码,javascript,.net,server-side,Javascript,.net,Server Side,更新:我简化了代码,只需在onClientClick中传递参数“1”。问题是,即使这样也不起作用,因为它翻译/编码了我的引号,所以javascript看不到它。我不想在服务器端添加这个。有没有办法将像数字1这样简单的参数传递给OnClientClick函数? 我只想在.aspx页面上执行此操作: <asp:Button onClientClick="return ValidateFile('1');" ID="btnUploadNominatorPDF" runat="server" T

更新:我简化了代码,只需在onClientClick中传递参数“1”。问题是,即使这样也不起作用,因为它翻译/编码了我的引号,所以javascript看不到它。我不想在服务器端添加这个。有没有办法将像数字1这样简单的参数传递给OnClientClick函数?

我只想在.aspx页面上执行此操作:

 <asp:Button onClientClick="return ValidateFile('1');" ID="btnUploadNominatorPDF" runat="server" Text="Submit" />


但是,页面对引号进行了编码,Javascript不会运行。

如果您只是尝试在aspx页面上向
OnClientClick
事件传递一个参数,那么您应该使用
使用submitbehavior=“false”
或可选的
OnClientClick=“ValidateFile('1');return false;“


对不起,我对编码问题一无所知。

一个解决方案是通过服务器端分配onclick。我在做你正在做的事情时总是遇到问题。好的,在你回答之前,我简化了我的代码,只是尝试在onClientClick中传递参数“1”。问题是,即使这样也不起作用,因为它翻译/编码了我的引号,所以javascript看不到它。我不想在服务器端添加这个。有没有办法将像数字1这样简单的参数传递给OnClientClick函数?trevoray,尝试使用System.Web.HttpUtility.JavaScriptStringEncode()。你能把你的服务器端代码发布给你吗tried@BlueChameleon我现在没有使用服务器端代码。我只是想在.aspx页面上的OnClientClick函数中传递一个参数。我不想为这个函数在服务器端代码中添加任何内容。在我的aspx页面上的ASP按钮上,仅仅向OnClientClick函数添加一个“1”参数,而不在服务器端添加它,这是不可能的吗?需要澄清的是:
ValidateFile
method,这是一个javascript函数还是aspx(-codebehind)中的一个方法?如果使用javascript,数字
1
是否可以工作,而不是您现在使用的字符串
'1'
?如果是服务器端,那么这将不会这么容易工作。