从javascript调用c#函数

时间:2008-11-10 12:44:37

标签: c# javascript

我想从我的javascript函数中调用一个c#函数。

我的ascx中有一个链接按钮(请参阅下面的代码)。问题是,如果你在Firefox中按Enter键不起作用,但它在Internet Explorer中工作正常。

<li class="clearfix border_top">
<label for="title" class="first_column bold">Search For</label>
<div class="contactUs_details">
<input type="text" id="advanced_txtBox1" name="advanced_txtBox1" class="searchbox" runat="server" style="width:300px;" />&nbsp;&nbsp;&nbsp;&nbsp;
<asp:CheckBox ID="chkSearchBDJ" runat="server" Text="Search BDJ" CssClass="checkboxlistnoborder" />
</div>
</li>

<div class="img_SearchNow">
<asp:LinkButton ID="btnSearchNow" CausesValidation="true" runat="server" OnClick="btnSearchNow_Click"></asp:LinkButton>
</div>

我有linkBut​​ton,请参阅上面我在Click上调用c#函数,但是如果你在上面的文本框中预设了一些文本并按“Enter”它应该自动调用函数“btnSearchNow_Click”。它在IE中运行良好,但在Firefox中无效。

3 个答案:

答案 0 :(得分:1)

点击按钮的javascript功能...

function clickMyButton() {
 var ele = document.getElementById('btnSearchNow');
 if ((ele !== null) && (ele != 'undefined')) {
   ele.click();
 }
}

您的问题的措辞可能会使用一些清理或一些其他信息。

如果您正在寻找文本框内的伪提交行为,请查看此帖子。 Submit Login control button when I hit Enter

您必须从服务器端生成javascript,因为您使用的是ASCX,并且ID不是您定义的ID。

答案 1 :(得分:0)

你需要在页面上有一个提交类型才能在firefox中正常工作。

<input id="mysubmit" runat="server" type="submit" onclick="return false;" style="display: none;" />

编辑:Here's a google cached page,其中包含更多信息。原来的帖子似乎没有ATM,但好老谷歌有它。

答案 2 :(得分:0)

对于.Net,您还可以将页面包装在面板中,并使用“DefaultButton”属性来选择链接按钮。

<asp:Panel DefaultButton="btnSearchNow" runat="server"> ... </asp:Panel>