无法从后端访问脚本设置的 html 值

Cannot access html value set by script from backend

我有一个带有 runat="server" 和 id 的 html 输入标签。 jquery 函数(滑块)设置输入字段的值。但是,我无法访问服务器端输入控件的值。 如何获取输入控件的值?

jquery 滑块函数片段:

    var num = $('#body_num1')
    $('#slider').slider({
     min:0,
     max:100, 
     slide: function(event, ui){
        num.val(ui.values[0]);
     }
    });

asp.net代码:

    <input type="text" id="num1" readonly runat="server"/>

当按钮 doSomething 被点击时(它应该访问 num1 的值):

    Protected Sub btn_doSomething_ServerClick(sender As Object, e As EventArgs)
      Dim num1_input As String = num1.Value
      System.Diagnostics.Debug.Writeline(num1_input)
    End Sub

我了解到 JIT 编译器遇到内部限制错误。

试试这个:

        <div id="MyTestSlider" style="width:30%">
        </div>

        <asp:HiddenField ID="MySlideValue" runat="server" ClientIDMode="Static"/>
        <asp:TextBox ID="TextBox1" runat="server" ClientIDMode="Static"></asp:TextBox>
                    
        <asp:Button ID="Button1" runat="server" Text="Button" />

        
        <script>

            $('#MyTestSlider').slider({
                min: 0,
                max: 100,
                step: 5,
                slide: function (e) {
                    slideValue = $('#MyTestSlider').slider("value")
                    $('#TextBox1').val(slideValue)
                    $('#MySlideValue').val(slideValue)

                }
                });

        </script>

因此后面的代码是这样的:

Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Debug.Print("Slider value = " & MySlideValue.Value)
    Debug.Print("Slider value in text box = " & TextBox1.Text)


End Sub

所以我有一个隐藏字段和一个文本框。你当然不需要两者。