【发布时间】:2015-12-17 20:06:04
【问题描述】:
我正在尝试传递一个字符串并从 vb.net 后面的代码中调用一个 javascript 函数,一旦我单击一个按钮。 javascript 在一个单独的文件中。
下面是按钮的代码:
/MyProject/myfile.aspx
<HTML>
...
...
<asp:textbox id="txtSearch" runat="server" Width="120px" CssClass="midField"></asp:textbox>
<input class="midBtn" id="btnSearch" type="button" value="Search" name="btnSearch" runat="server">
...
...
<script src='<%= Page.ResolveClientUrl("~/script/functions/myFunc.js")%>' ></script>
</HTML>
/MyProject/myfile.aspx.vb
Private Sub btnSearch_ServerClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.ServerClick
Dim searchString As String
searchString = txtSearch.Text
Dim rsname As String = Page.ResolveClientUrl("~/script/functions/myFunc.js")
Page.ClientScript.RegisterStartupScript(Me.GetType(), "mySearch", "mySearch('" & searchString & "')", True)
End Sub
/MyProject/script/functions/myFunc.js
function mySearch(searchString){
// ...
// logic for mySearch
// ...
}
我无法调用 javascript 函数,我需要在 .apsx 页面末尾引用 .js 文件。我从调试器得到的错误是Uncaught ReferenceError: mySearch is not defined,请帮忙。
【问题讨论】:
-
如果要调用javascript函数,为什么要从服务器端调用?
-
在 btnSearch_ServerClick() 函数中,我计划添加一个下拉菜单以根据所选项目执行不同的行为。一种选择是调用 javascript,另一种是进行非 javascript 调用。
-
好吧,我仍然不确定我是否能 100% 完成游戏,但这些天我只写 MVC! :) 我认为你的脚本需要包装在
<script language='javascript'></script>中才能在客户端工作。 -
例如
"<script language='javascript'>mySearch('" & searchString & "')</script>" -
基于this问题,可能是基于名称
mySearch
标签: javascript jquery asp.net vb.net