2011-10-17 74 views
0

我有一个文本框和图像按钮如下如何在此基础上

<asp:TextBox ID="myText" runat="server"></asp:TextBox> 
<asp:ImageButton ID="btnExecute" runat="server" OnClick="btnExecute_Click" /> 

现在,这里是我的问题,在Page_Load中有一些绑定..而这些绑定检测当前的URL,然后向前进入数十个控件和类,到它的即将到达我的代码On_Click为我的按钮为时已晚......它会重定向到其他地方..我需要重定向到一个不同的页面,但它永远不会达到它的目的地,除非我以某种方式忽略之间的所有东西,我不愿意做..

所以,我认为的解决方案是使用J avascript对图像按钮OnClientClick,可惜我不是它这么好,希望你能帮助我..伪代码将是这样的

if(the current url contains some page.aspx) 
     { 
      var value = get the value from myText; 

      then navigate to myotherpage?txtvalue=value; 
     } 

有人可以帮我这个JavaScript没有进入到关于为什么我这样做的很多细节?请

我真的很感激它。

谢谢

回答

2

天真翻译你的伪代码的javascript:

if (window.location.href.indexOf('page.aspx') > -1) 
{ 
    var value = document.getElementById('<%= myText.ClientID %>').value; 
    window.location.href = 'myotherpage?txtvalue=' + encodeURIComponent(value); 
} 
+0

抱歉的意思给你答案,但我瞟了一眼快,看到你的上面的名字hehe – user710502

2

试试这个:

if (window.location.href.indexOf("page.aspx") != -1) { 
    var val = document.getElementById("myText").value; 
    window.location = "/myotherpage?txtvalue=" + encodeURIComponent(val); 
} 
+0

请注意ASP.NET id名称的变形。 –

+0

OP由浏览器页面上的对象使用适当的ID。他们没有显示实际生成的HTML,所以我不知道实际的ID是什么(因为我不知道ASP或关心)。我刚刚根据他们的伪代码使用了“myText”。 – jfriend00

+0

这就是ASP.NET的问题。你永远不知道实际生成的ID。这就是为什么你必须使用服务器端结构来获取我的答案中所示的实际ID。 –