asp.net:点击运行javascript?

时间:2011-09-19 19:11:10

标签: c# javascript asp.net html

我有表格和按钮表格:

<asp:Button ID="Button1" runat="server" Text="Button" OnClick="SubmitData"  />

我的c#程序中有一个方法。该方法称为SubmitData

但是我也想在这个按钮点击上运行一个javascript函数。我该怎么做?

这是我的javascript函数:

var selectedLanguages = new Array();
jQuery('#lstProblems option:selected').each(function() {
    selectedLanguages.push(jQuery(this).val());
});

我是从这里得到的:jquery listbox return what user selected

我该怎么办呢?我是否必须将其放入<script></script>并执行some_Function(等等......)?

3 个答案:

答案 0 :(得分:5)

您应该使用OnClientClick='myJsFunc();'

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

<script type="text/javascript">

function aaa()
{
var selectedLanguages = new Array();
jQuery('#lstProblems option:selected').each(function() {
    selectedLanguages.push(jQuery(this).val());
});
}
</script>

答案 1 :(得分:3)

您可以使用OnClientClick事件

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Your javascript function" OnClick="SubmitData"  />

答案 2 :(得分:2)

以类似于已经存在的方式设置服务器端事件代码,然后在代码的Page_Load方法中添加以下行:

Button1.Attributes.Add("onclick","yourJavascriptFunction();");

编辑:要从您编辑过的问题中运行该功能,只需在javascript文件中创建一个同名的功能即可。像这样:

<script type="text/javascript">
function yourJavascriptFunction()
{
var selectedLanguages = new Array();
jQuery('#lstProblems option:selected').each(function() {
    selectedLanguages.push(jQuery(this).val());
});
}
</script>