-1

我的 runat="sever" 标签

 <asp:Label ID="Label1" runat="server" Text="hello"></asp:Label>

我的html标签

<form >  
<input type="text" name="requestparameter" id="requestparameter" ><br />
<input type="submit" name="submit"  value="Submit">
</form>

当我用来单击提交按钮时,我希望将 Label1.Text 值存储在请求参数中

4

4 回答 4

0

如果您不想将任何内容发布到服务器,请按照之前发布的答案进行操作,但要使用return false

<asp:Label ID="Label1" runat="server" Text="hello"></asp:Label>
<form >  
       <input type="text" name="requestparameter" id="requestparameter" ><br />
       <input type="submit" name="submit"  value="Submit" onclick="SetValue()">
</form>
<script>
    function SetValue()
    {
        $("#requestparameter").val($("#<%= Label1.ClientID %>").text());
        return false;
    }
</script>

return false将阻止事件的默认功能。即:将表单发布到服务器是提交按钮的默认功能。

而不是添加return false您可以更改<input type="submit" name="submit" value="Submit" onclick="SetValue()"><input type="button" name="submit" value="Submit" onclick="SetValue()">(请参阅类型更改)

另外,请记住添加 jQuery 引用。

于 2013-08-24T11:02:25.657 回答
0

嗨,你可以试试 Nilesh 写的

或者你可以试试这个。

<asp:Label ID="Label1" runat="server" Text="hello"></asp:Label>
<form >  
       <input type="text" name="requestparameter" id="requestparameter" ><br />
       <input type="submit" name="submit"  value="Submit" onclick="SetValue()">
</form>
<script>
    function SetValue()
    {
        $("#requestparameter").val($("#<%= Label1.ClientID %>").text());
    }
</script>

因为当 asp.net 呈现 HTML 时,它会以不同于它在 aspx 页面中的方式转换元素的 ID。如果要在渲染时获取 ID 的值,可以使用 Control.ClientID 属性。

于 2013-08-24T10:23:39.433 回答
0

可能这会有所帮助

        <form > 
  <asp:Label ID="Label1" ClientIDMode='static' runat="server" Text="hello"></asp:Label> 
            <input type="text" name="requestparameter" ClientIDMode='static' id="requestparameter" onclick='SetValue' ><br />
            <input type="submit" name="submit"  value="Submit">
            </form>
            <script>
            function SetValue(){
    document.getElementById('<%=requestparameter.ClientID %>').value=     document.getElementById('<%=Label1.ClientID %>').innerHTML
            }
            </script>
于 2013-08-24T09:24:28.333 回答
0

尝试这个。您想在脚本中放置一个调试器并检查您从标签中获得的值。

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
    <script type="text/javascript">
        $(document).ready(function () {
            $("#testid").click(function () {
                debugger;
                $("#requestParameter").val($('#<%=label1.ClientID %>').text());
                alert($("#requestParameter").val());
            });
        }); 
    </script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server"  ContentPlaceHolderID="MainContent">
    <asp:Label ID="label1" runat="server" Text="Hello"></asp:Label>
    <input type="text" id="requestParameter" />
    <input type="button" value="test"  id="testid"/>
</asp:Content>

编辑:修改了代码。这按预期工作。

于 2013-08-24T09:51:24.293 回答