Передача переменной в функцию javascript и ее выполнение - VB.NET
Я использую Asp.Net/VB.Net для моего сайта и на конкретной странице Я пытаюсь использовать некоторый Javascript для установки горизонтальной полосы прокрутки. Я не знаю javascript, но мне удалось заставить работать следующее. Когда вы нажимаете кнопку, она изменяет положение прокрутки. Однако теперь мне нужно избавиться от кнопок и просто иметь VB.Чистый код передает 'posNo' через функцию при загрузке страницы, так что полоса прокрутки устанавливается автоматически..
<asp:ImageButton ID="Button1" runat="server" ImageUrl="files/images/icons/Button1.gif" OnClientClick="gotoPage(1);return false;" ValidationGroup="Client" /> <asp:ImageButton ID="Button2" runat="server" ImageUrl="files/images/icons/button2.gif" OnClientClick="gotoPage(2);return false;" ValidationGroup="Client" /> <asp:ImageButton ID="Button3" runat="server" ImageUrl="files/images/icons/button3.gif" OnClientClick="gotoPage(3);return false;" ValidationGroup="Client" /> <!-- javascript function --> <script> function gotoPage(posNo) { var scroll = 260 * posNo; document.getElementById('myScrollbox').scrollLeft = scroll; } </script>
Что я уже пробовал:
Так что это то, что я пытался (я, вероятно, далеко).. Я удалил кнопки и попробовал это как VB-код..
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load Dim posNo As Integer = "2" Dim cstype As Type = Me.GetType() Page.ClientScript.RegisterStartupScript(cstype, "goToPage('" & posNo & "');", True) End Sub
Richard Deeming
Кроме назначения строкового литерала целочисленной переменной, что плохого в том, что вы пробовали?
Dim posNo As Integer = "2"должно быть
Dim posNo As Integer = 2
И вам не нужны одинарные кавычки вокруг
goToPage
аргумент: Page.ClientScript.RegisterStartupScript(cstype, "goToPage(" & posNo & ");", True)