如何将变量从html传递给aspx?

时间:2016-01-30 12:18:34

标签: html asp.net

我想将 html 页面中的变量传递到 aspx 页面中的隐藏字段,我有一个带代码的 aspx 表单

    <div id="divFrameHolder" style="display: none">
       <iframe  src="inner/RegSelect.html"name="myIframe" id="myIframe" width="100%" height="200px" frameborder="0" onload="hideLoading()"> 
<asp:HiddenField   ID = "hidField"   runat="server"  value = " " /> 
     </iframe>
    </div>

RegSelect.html有此代码

<div id="tabs">

        <ul>

            <li style="font-family:'b nazanin';  font-weight:bold"><a onclick="use();" href="site"><i class="fa fa-picture-o fa-5x"></i><br />سایت</a></li>
            <li style="font-family: 'b nazanin'; font-weight: bold"><a onclick="use();" href="stor"><i class="fa fa-shopping-cart  fa-5x"></i><br />فروشگاه</a></li>
            <li style="font-family: 'b nazanin'; font-weight: bold"><a onclick="use();" href="blog"><i class="fa fa-comments  fa-5x"></i><br />وبلاگ</a></li>

        </ul>

        <section class="tabs-content" style="width:100%">

            <div id="site" style="width:100%" >

            </div>


            <div id="stor">

            </div>
            <div id="blog">

            </div>
</section>

    </div>
<script>

        $('#tabs a').click(function (e) {
            var f = $(this).attr('href');
            alert(f);
            window.opener.location.href = "RegForm.aspx?" + "val=" + f
            //var c = $('#myIframe').contents().find('#HF1').val();
            //alert(c);
            //alert($('#myIframe #HF1').val());
            //$('  #HF1').val(f);          
        });
    </script>

现在,我想在 aspx 页面中获取var f?我可以将 html 页面中的变量转换为 aspx 页面吗?

2 个答案:

答案 0 :(得分:0)

您可以使用Request.QueryString获取URL参数的值

Retrieve GET variables from URL in ASPX

答案 1 :(得分:0)

好像你想把一个变量从IFrame中的html页面传递到包含IFrame的页面中的隐藏字段。

使用jQuery访问IFrame内容,如下所述:how to access iFrame parent page using jquery?

注意:ASP.NET WebForms具有一个设置,用于确定如何为控件生成ID。 See Here确保隐藏字段的ID模式是静态的。

还要了解ASP.NET生成ID以防止冲突。使用您知道在页面上唯一的隐藏字段的ID。

<asp:HiddenField ID="hidField" ClientIDMode="Static" runat="server" value=" " />

使用它来访问aspx页面中的隐藏字段:

   $('#tabs a').click(function (e) {
        var f = $(this).attr('href');
        alert(f);
        window.opener.location.href = "RegForm.aspx?" + "val=" + f

        $('#hidField', window.parent.document).val(f);

        //var c = $('#myIframe').contents().find('#HF1').val();
        //alert(c);
        //alert($('#myIframe #HF1').val());
        //$('  #HF1').val(f);          
    });

请注意,hidField需要是包含aspx页面中的dom元素。

<强> ASPX

<div id="divFrameHolder" style="display: none">
   <iframe  src="inner/RegSelect.html"name="myIframe" id="myIframe" width="100%" height="200px" frameborder="0" onload="hideLoading()"> 
 </iframe>

 <input type="hidden" id="hidField" />

</div>