0

这就是我将值传递给 iframe 中调用的页面的方式

<script type="text/javascript">
        function refreshConversatio() {
            document.getElementById('ifrmConversation').src = 'Default2.aspx?id=' + document.getElementById('<%=HiddenField1.ClientID %>').value;
        }

    </script>

这是我在 iframe 中加载的其他页面中接收值的方式

 <script type="text/javascript">
        function getParameterByName(name) {
            name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
            var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
                results = regex.exec(location.search);
            return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
        }
        function myLoad() {
            document.getElementById('<%=hdn.ClientID%>').Value = getParameterByName("id");
        }
    </script>


       <asp:HiddenField ID="hdn" runat="server" />


    <script type="text/javascript">
        myLoad();
    </script>

我认为某处存在问题(可能在 myLoad() 中),因为我无法接收传递的值。我在这里做错了什么?

4

3 回答 3

0

为了获得隐藏字段的值,请尝试以下操作:

var abc =  document.getElementById('hdn');  

或者

var abc =  document.getElementById('hdn').value;
于 2013-10-19T06:01:25.430 回答
0

试试这个示例方式

代码

<asp:HiddenField ID="hf_myhiddenfield" runat="server" Value="hidden value"/>

您可以使用 Javascript 函数将值插入到onclick属性中

点击

onclick="window.open('../New/FeedbackV4.aspx'+GetHFValue(),'FeedbackWindow','width=960,height=640,scrollbars=yes,resizable=yes,status=yes')"  

Javascript

<script type="text/javascript">
    function GetHFValue() {
        var hf_value = '?' + document.getElementById("<%= hf_myhiddenfield.ClientID %>").value;
        return hf_value;
    }
</script>

上面的代码示例在这里

并在下面调用此代码以获取查询字符串值

/*
* <summary>
* Get the querystring value
* </summary>
* <param name="key">A string contains the querystring key</param>
* <param name="defaultVal">Object which get returns when there is not key</param>
**/
function getQuerystring(key, defaultVal) {
    if (defaultVal == null) {
        defaultVal = "";
    }
    key = key.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regex = new RegExp("[\\?&]" + key + "=([^&#]*)");
    var qs = regex.exec(window.location.href);
    if (qs == null) {
        return defaultVal;
    }
    else {
        return qs[1];
    }
}
于 2013-10-19T06:03:58.447 回答
0

请参阅此 SO 答案以了解如何从父窗口调用 iframe 中的函数:

在 iframe 中调用 javascript 函数

于 2013-10-19T04:14:38.140 回答