2013-12-13 2 views
0

Я хочу создать веб-страницу, которая перенаправляет пользователя на страницу входа в систему и автоматически подписывает их, используя один журнал, в котором у меня есть. (Я не хочу, чтобы у них была эта информация в журнале - я просто хочу, чтобы это было сделано автоматически).Создание макроса в HTML

Я создал макрос, используя VBA, и он работает там. Я хотел знать, есть ли способ реализовать это в моем HTML-коде или мне придется переписать макрос на другом языке кодирования?

УВА код у меня есть:

Sub Test() 

    Const cURL = "http://www.google.com" 'Enter the web address here 
    Const cUsername = "user1" 'Enter your user name here 
    Const cPassword = "*****" 'Enter your Password here 

    Dim IE As InternetExplorer 
    Dim doc As HTMLDocument 
    Dim LoginForm As HTMLFormElement 
    Dim UserNameInputBox As HTMLInputElement 
    Dim PasswordInputBox As HTMLInputElement 
    Dim SignInButton As HTMLInputButtonElement 
    Dim HTMLelement As IHTMLElement 
    Dim qt As QueryTable 

    Set IE = New InternetExplorer 

    IE.Visible = True 
    IE.Navigate cURL 

    'Wait for initial page to load 

    Do While IE.ReadyState <> READYSTATE_COMPLETE Or IE.Busy: DoEvents: Loop 

    Set doc = IE.Document 

    'Get the only form on the page 

    Set LoginForm = doc.forms(0) 

    'Get the User Name textbox and populate it 
    'input name="Email" id="Email" size="18" value="" class="gaia le val" type="text" 

    Set UserNameInputBox = LoginForm.elements("user") 
    UserNameInputBox.Value = cUsername 

    'Get the password textbox and populate it 
    'input name="Passwd" id="Passwd" size="18" class="gaia le val" type="password" 


    Set PasswordInputBox = LoginForm.elements("pass") 
    PasswordInputBox.Value = cPassword 

    'Get the form input button and click it 
    'input class="gaia le button" name="signIn" id="signIn" value="Sign in" type="submit" 

    Set SignInButton = LoginForm.elements("LOG_ON_BTN") 
    SignInButton.Click 

    'Wait for the new page to load 

    Do While IE.ReadyState <> READYSTATE_COMPLETE Or IE.Busy: DoEvents: Loop 

    End Sub 

Если кто-нибудь знает, как реализовать макросы в HTML, который будет большим?

ответ

0

Html есть некоторые макро-поддержку, но не то, что вы ищете (http://metahtml.sourceforge.net/examples/defining-macros.mhtml)

В HTML это язык разметки и, следовательно, не будет в состоянии сделать редирект. Если вы используете MVC для создания своего сайта, желаемого поведения легко достичь.

Если вы не используете MVC, вам придется перейти на ASP.Net и переписать свой макрос на C# или vb.net.

0

HTML - это язык разметки. Он не обладает необходимыми структурами для программирования.

Если вы используете страницы с ASP (классический ASP), я думаю, вы можете использовать VBA или очень похожий вариант. Или адаптируйте свой код для VB.Net и используйте ASP.NET.

+0

Может ли кто-нибудь сказать мне, как преобразовать этот код в C#, поскольку я сейчас использую ASP.Net для создания сайта? – user2674605

+0

Портирующий код выходит за рамки stackoverflow. – suspectus

Смежные вопросы