通过C#和ASP.Net从JSON打开URL

时间:2016-07-18 22:03:25

标签: c# asp.net json

我有可变的URL字符串,从外部JSON块读取到后面的C​​#代码中。

然后我在表格中创建可点击的按钮,需要打开一个新窗口并启动这些URL。它们保存在对象的字符串变量中。

但是,我找不到在aspx端创建一个函数的方法,它在click上打开一个窗口并使用URL字符串。

目前我正在为按钮添加属性

Button b = new Button();
b.Attributes.Add("onClick", "OpenURL()");
bCell.Controls.Add(b); 

有了这个,我可以打开一个窗口,但我似乎无法将从JSON字符串反序列化的URL转换为OpenURL()

function OpenURL(url) {var x = window.open(url, 'mynewwin');

前端功能。

由于网址不同,我无法在任何地方进行硬编码。

所有按钮,行和单元格都是从JSON字符串动态生成的。因此,这些都不会发生硬编码。 //第一次发布海报试图寻找解决方案但失败

1 个答案:

答案 0 :(得分:0)

如果你知道创建按钮时网址是什么,你可以这样做:

Button b = new Button();
var url = "some url";
b.Attributes.Add("onClick", string.Format("OpenURL({0})",url));
bCell.Controls.Add(b); 

如果您在加载页面之前不知道该URL,则可以将其存储在页面上的变量中,并在单击链接时检索它。

<script>
    var url;

    //have whatever you use to set the url call this function
    function setUrl(inputUrl){
        url = inputUrl; 
    }

    function OpenURL(){
        var x = window.open(url,'some window');
    }
</script>