使用 Javascript 单击按钮

Click a button using Javascript

本文关键字:按钮 单击 Javascript 使用      更新时间:2023-09-26

我需要我的JavaScript文件从另一个页面单击asp按钮,这是代码:

if (something..) {
            document.getElementById('<%=Button1(how to write it?).ClientID %>').click();
        }
Button1 在默认的.aspx文件中

,JavaScipt 在 Click.aspx 文件中 - javascript 不在默认的.aspx页面中我该如何执行此操作?

这是我的asp按钮:

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

对你的问题有点困惑。

.如果按钮在同一页面中,则可以使用

 __doPostBack(buttonID,'');

如果按钮位于其他页面中,并且未加载该页面。我认为您不能直接进行回发。可能是您可以将参数作为查询字符串传递,然后在服务器端读取查询字符串,然后如果值存在,则触发按钮单击事件。

编辑

ASPX:默认.aspx

    <script>
        var button1 = "<%= Button1.ClientID %>";
        var something = true;
    </script>
    <h3>We suggest the following:</h3>
   <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return false;" OnClick="Button1_Click" />

    <script src="Scripts/test.js"></script>

JavaScript:test.js

var element = document.getElementById(button1);
if (element != null) {
    element.onclick = function () {
        if (!something) return false;
        return true;
    };
}

C#

 public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string a;
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            var clicked = "";
        }
    }

JQuery 允许你非常轻松地做到这一点。

如果将 JQuery 导入到项目中,然后执行以下操作:

    $('buttonIdHere').click();

这应该能满足你的需求。

假设你的按钮的ID是Button1,并且你想要导致回发,在你的javascript中使用它:

eval('<%= Page.ClientScript.GetPostBackEventReference(Button1, String.Empty) %>')

刚刚注意到"JavaScript文件从另一个页面单击asp按钮"。 你从另一个页面是什么意思??你有 page1.aspx上面有 javascript,并试图调用 page2.aspx 的 button1?

如果是这样,您将无法这样做,因为没有加载 Page2。请改用网络方法:

1) 在 Page2 中创建一个公共静态方法,执行 Button1.Click 回调执行的操作。

2) 将 Button1_Click 替换为对该静态方法的调用。

3)然后从Page1上的javascript中调用PageMethods.YourMethodName

有效地执行与Button1_Click相同的例程

编辑:

最终结果的示例:

Page2.aspx.cs
protected void Button1_Click(object sender, EventArgs e)
{
    MyWebMethod();
}
[WebMethod]
public static void MyWebMethod ()
{
    //... Do something useful
}
Page1.aspx
<script>
    function callMyWebMethod(){
        PageMethods.MyWebMethod(function(){ // success callback}, function(){ // error callback});
    }
</script>

为了使页面方法正常工作,您需要在页面上使用EnablePageMethods = True的脚本管理器。