代码之家  ›  专栏  ›  技术社区  ›  Learner

从代码隐藏向javascript传递值

  •  0
  • Learner  · 技术社区  · 6 年前

    我需要从后面的代码向javascript传递一个值。

    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "script", "<script type='text/javascript'>OpenPopUp();</script>", false);
    

    JS:

    function OpenPopUp(parameterValue) {           
            paramframe = parameterValue;            
            openmodal(paramframe);
        }
    

    所以 parameterValue 将具有从代码隐藏传递的ID.Text值。

    我需要在这个函数中传递一个来自代码隐藏的值 OpenPopUp 到JavaScript。

    我尝试了下面的代码,但javascript没有启动。我是否将正确的值传递给JS?

    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "script", "<script type='text/javascript'>OpenPopUp(" + ID.Text + ");</script>", false);
    

    ID.Text 是GridView中LinkButton的项模板值。

    2 回复  |  直到 6 年前
        1
  •  2
  •   user6656728    6 年前

    试试这个,这个应该管用

    ScriptManager.RegisterStartupScript(this, typeof(string), "script1", "SampleJSFunction('" + vls_variable.Text+ "');", true);
    
        2
  •  0
  •   Hoshani    6 年前

    通常我会使用一个隐藏的参数,并从javascript和C访问它,就像这样

    ASP.NET

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

    javascript

    var FieldName= document.getElementById('<%=HiddenFieldID.ClientID%>').value;
    

    和C

    var x = HiddenFieldID.Value
    

    请注意,隐藏字段的值为字符串。我更喜欢这种方式,这样代码在将来更容易维护。