ページロードイベントで動的に作成するASPテーブルがあります。このイベントでは、ASPテーブルにタイトルを設定し、ダウンロードするクライアントのファイルを提供する.ashxページを指すASP .NETハイパーリンクコントロールを作成します。ASP .NETからのJavascript関数呼び出しハイパーリンクNavigateURLプロパティ
特定のファイル(画像ファイル)については、そのファイルが表示された新しいウィンドウを開くためのjavascript関数を起動したいと思います。私はこれを行うためのすべてのコードを持っていますが、JavaScriptのハイパーリンクNavigateURLプロパティで機能する関数を取得できません。私はJavascriptにはとても新しいので、私は何が欠けているのか分かりません。私は何をしようとしていますか?テーブルコントロールを使用できませんか?
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim iWineID As Integer
If Not Integer.TryParse(Request.Params("WineID"), iWineID) Then Throw New InvalidOperationException("Invalid request")
Me.lblWineName.Text = Utils.GetWineName(iWineID)
Dim dtDocs As New dsDocs.docsDataTable
Using taDocs As New dsDocsTableAdapters.docsTableAdapter
dtDocs = taDocs.GetDataByProdIDOrWineID((Utils.GetProducerIDByWineID(iWineID)), True, iWineID)
End Using
If dtDocs.Rows.Count = 0 Then
Me.lblDocsFound.Text = "No documents available for this wine."
Else
Me.NumberDocs(dtDocs)
For Each drDoc As dsDocs.docsRow In dtDocs
Dim myRow As New TableRow
Dim myTitleCell As New TableCell
Dim myDLCell As New TableCell
Dim myHL As New HyperLink
Select Case drDoc.doc_type_id
'window.open('preview.aspx?WineID=' + nWineID', 'height=' + nWindowHeight + ',width=' + nWindowWidth + ',status=no,toolbar=no,menubar=no,location=no,scrollbars=' + bScrollbars + ',resizable=' + bScrollbars + ',titlebar=no');
Case Constants.DocType.BottleShot, Constants.DocType.Label, Constants.DocType.Logo
myHL.NavigateUrl = "javascript:OpenPrev('" & drDoc.doc_id & "');return false;" '"javascript:window.open('~/Home/docpreview.aspx?DocID=" & drDoc.doc_id '& "','_blank', 'height=600, width=600,status=no,toolbar=no,menubar=no,location=no,scrollbars=no,resizable=no,titlebar=no'"
'"~/Home/docpreview.aspx?DocID=" & drDoc.doc_id
myHL.Text = "View"
Case Else
myHL.NavigateUrl = "~/Home/docs.ashx?DocID=" & drDoc.doc_id
myHL.Text = "Download"
End Select
myTitleCell.Text = StrConv(drDoc.doc_type_name, VbStrConv.ProperCase)
myDLCell.Controls.Add(myHL)
myRow.Cells.Add(myTitleCell)
myRow.Cells.Add(myDLCell)
Me.tableDocs.Rows.Add(myRow)
Next
End If
End Sub
背後
ASPコードのJavascript
function OpenPrev(DocID){
var objWin
var myURL
alert("GO!");
myURL='~/Home/docpreview.aspx?DocID=' + DocID;
objWin=window.open(myURL, 'Doc View', 'width=600,height=600,resizable=no,scrollbars=yes,toolbar=no');
}
:
へ:
あなたのようNavigateURLを設定する任意の場所を変更してみてくださいJavascriptがの概念を理解していません ' 〜のURLで - それは.NETの概念であり、サーバーコードでのみ利用可能です。 –