簡體   English   中英

如何為SharePoint對話框帶來一個值以綁定數據?

[英]How can I bring a value to SharePoint Dialog to bind data?

如何為SharePoint對話框帶來一個值以綁定數據? 我這樣稱呼對話框

<input type="button" value="<%#((DataRowView)Container.DataItem)["Id"] %>"   onclick="javascript:Open()" />

劇本

<script type="text/javascript">
    //User Defined Function to Open Dialog Framework
    function Open() {

        var strPageURL = '<%= ResolveClientUrl("~/View.aspx") %>';
        OpenCustomDialogWithRefresh(strPageURL, 650, 400, "Add Document Type");
        return true;
    }
</script>

JS

function OpenCustomDialogWithRefresh(dialogUrl, dialogWidth, dialogHeight, dialogTitle, dialogAllowMaximize, dialogShowClose) {

var options = {
    url: dialogUrl,
    allowMaximize: dialogAllowMaximize,
    showClose: dialogShowClose,
    width: dialogWidth,
    height: dialogHeight,
    title: dialogTitle,
    dialogReturnValueCallback: Function.createDelegate(null, CloseCallback4)
};
SP.UI.ModalDialog.showModalDialog(options);}

我不知道如何將Id值帶到View.aspx。

然后,我可以在view.aspx頁面中填充數據。

提前致謝。

您可以將ID作為查詢字符串參數傳遞。 這會使您的網址行如下所示:

var strPageURL = "<%= String.Format("{0}?id={1}", 
                   ResolveClientUrl('~/View.aspx'), 
                   ((DataRowView)Container.DataItem)['Id']) %>";

給你一個看起來像這樣的網址

mysite.com/View.aspx?id=12345

然后在view.aspx上,您應該可以獲取查詢字符串'id'鍵的值。

更新:

如果然后像示例中那樣使用此行:

OpenCustomDialogWithRefresh(strPageURL, 650, 400, "Add Document Type");

您應該能夠在postBack上訪問查詢字符串參數:

if (Page.IsPostBack)
{
    string id = Request.QueryString["id"];
    // use the id here
}

這是我嘗試和解決的方法。

它在GridView中

<input type="button" value="<%#((DataRowView)Container.DataItem)["DocTypeCode"] %>"  onclick="javascript:Open('<%#Eval("Id") %>')" />

這是JavaScript

function Open(id) {
    var strPageURL = '<%= ResolveClientUrl("~/_layouts/RPSWA/Dialogs/DocTypeView.aspx?id=") %>' + id;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM