aspx页面通过按钮打开超链接

时间:2015-09-22 08:26:42

标签: javascript c# jquery html asp.net

我已经阅读了几个答案,并尝试了一些不同的代码,但是还没有能够解决这个问题。我是一个新手,这似乎是一件非常简单的事情,如果答案真的很明显,请道歉,只需要它真正起作用.. 到目前为止,我在Visual Studio 2010中有一个aspx页面/它是由其他人创建的,并且后面有JavaScript和cSharp代码。 我想要发生的是,'编辑'按钮出现在页面的正确位置的表格中,按下它后,另一个页面被调用,允许编辑(联系人 - 它是一个内部网站)。

我可以将该链接正常运行作为正常情况'超链接,使用以下代码行:

    var editcontact = '<td align = "right" colspan = "40" class = 
"contactBorder"><a href="WebForm1.aspx?supplier_id=' + 
dataRow.supplier_id + '">Open Contact(s) For Edit</a></td>';

编辑联系人,然后将其放入类似于结构的表格中(可能是#&#34;表格&#34;给定HTML标签):

finishedcontacts += openrow + contactid + contactname + 
contactjobtitle + contactlocation + contacttelephone + 
contactemail+ editcontact + '</form></tr>'; 

没关系,但它不是很好,我想要的是一个实际的编辑按钮,我可以让按钮出现,但是我最后一次尝试按下它什么都不做:

var editcontact = '<asp:button id = "editImage4" runat="server" 
Text="Click me" 
OnClientClick="window.open(\'WebForm1.aspx\\?supplier_id=\' + dataRow.supplier_id + \', \'WebForm1\');" />';

关于如何通过按钮使其正常工作的任何想法?

这是我尝试的其他一些代码,它是将url的生成与调用代码分开,但它们似乎都不起作用:

//var url = string.Format("{0}?supplier_id={1}", "../WebForm1.aspx", dataRow.supplier_id);
//var url = string.Format("{0}?supplier_id={1}", @"../WebForm1.aspx", dataRow.supplier_id);
//var url = 'string.Format("{0} supplier_id={1}", "WebForm1.aspx",'+ dataRow.supplier_id +')';
var url = 'WebForm1.aspx?supplier_id= '+ dataRow.supplier_id +'';
var supplierid1 = dataRow.supplier_id;

任何想法都非常感激。这是我的第一篇帖子..

2 个答案:

答案 0 :(得分:0)

如果要使用按钮重定向,请使用Response.Redirect(url),此按钮必须是服务器端控件。

答案 1 :(得分:0)

最后,一位同事帮我解决了这个问题。 正如其他海报所发现的那样,URL存在一些问题,尤其是逃逸问题。 无论如何,下面是代码,在任何可能的情况下,任何人都需要类似的东西。

buttoncode =&#39;&#39;;

var editcontact =&#39;&#39; + buttoncode +&#39;&#39;;

我们添加了一个函数(可能应该称为方法或其他):    函数OpenContactForEdit(supplier_id)     {     window.location =&#34; WebForm1.aspx?supplier_id =&#34; + supplier_id;     }

评论: 这一点非常重要: onClick =&#34; OpenContactForEdit(\&#39;&#39; + dataRow.supplier_id +&#39; \&#39;)&#34;

请注意我们需要如何逃避(以及&#39; end escape&#39;)单引号。 我认为这是原因的一个重要部分,我所做的不起作用。