まあ、これは「これは私のマシンで動作します」のケースに違いありません。
問題は:
私は私の中に持っていLinkButton
ますGridView
:
<asp:TemplateField HeaderText="Website">
<ItemTemplate>
<asp:LinkButton ID="L_Website" CausesValidation="true" runat="server" Text='<%# Eval("L_Website") %>'
CommandArgument="GoToWebsite" OnClientClick="return confirm('Are you sure you want to go to this Website?');"
CommandName="GoToWebsite"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
でデータを入力しますDataReader
:
dr["L_Website"] = Convert.ToString(reader["L_Website"]);
GoToWebsitecode も表示したい場合があります。
protected void GV_Contacts_RowCommand(object sender, GridViewCommandEventArgs e)
{
string ID = string.Empty;
string status = string.Empty;
if (e.CommandName == "Edit")
{
//code here
}
else if (e.CommandName == "View")
{
//code here
}
else if (e.CommandName == "GoToWebsite")
{
LinkButton lb = (LinkButton)e.CommandSource;
GridViewRow gvr = (GridViewRow)lb.NamingContainer;
LinkButton LinkButton = gvr.Cells[8].Controls[1] as LinkButton;
if (LinkButton.Text.Substring(0, 3) == "www")
{
System.Diagnostics.Process.Start(LinkButton.Text);
}
else
{
System.Diagnostics.Process.Start("www." + LinkButton.Text);
}
}
}
ローカルマシンで正常に動作します。それが表示され、それをクリックすると、ローカル バージョンが確認を行い、このページで新しいタブを開きます。サーバー(IIS 6.0)でも正しく表示され、クリックすると確認が行われますが、ページで新しいタブが開きません。
を変更するCausesValidation
と、それも機能しません。
私が持っていない場合OnClientClick
、それも機能しません。
に移動 (ホバー)LinkButton
すると、ポストバックが行われることが示されます。
すでにありがとう:)