开发者

Get me off the JavaScript postback Failboat

I've got to call two js functions, setfocus on textbox and stop a postback from occuring on single buttonclick. I think I got it if I could only intercept the postback. My js skills are on par with weaksauce.

test case

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JsTextFocus.aspx.cs" Inherits="WebApplication1.JsTextFocus" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript" language="Javascript">
        function aMethod() {
            var dowork = 'bleh';
        }
              function setFocusOnTextBox() {
                  TextBox1.Focus();
              return false;//Stop the postback..FAIL
          }
        </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:ImageButton ID="imageBtn" runat="server" ImageUrl="images/document_Small.gif" CausesValidation="false" OnClientClick="aMethod();return setFocusOnTextBox();return false;" />
    </div>
    </form>
</body>
</html>

Page load shouldn't fire after OnClientClick

    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write("PS开发者_JAVA技巧 happened at " + DateTime.Now);
    }


You are referring to TextBox1 in yout setFoucs.. function which is unknown at that point. Use document.getElementByID to get a reference to textbox and then call focus not Focus.

function setFocusOnTextBox() 
{         
  var TextBox1 = document.getElementById("TextBox1");
    TextBox1.focus();              
    return false;         
}         

You can remove the return false at the end of the Image ClientClick handler. i.e.:

<asp:ImageButton ID="imageBtn" 
runat="server" 
ImageUrl="images/document_Small.gif" 
CausesValidation="false" 
OnClientClick="aMethod();return setFocusOnTextBox();" />
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜