Solved

How to call VB Script in VB code?

Posted on 2004-04-18
18
208 Views
Last Modified: 2012-05-04
Hi,

I need to execute my VB code when this happens:

        If userName <> dReader2("custID") Then
            Response.Redirect("ForumPosts.aspx?topicID=" & topicID)
            'Execute VB code right here
        End If

This is my VB code:

      <!-Script to alert user that they can only edit their own post.>            
      <script language="vbscript">
      Function NoWay()
        MsgBox("You can only edit your own posts!")
      End Function
      </script>

How do it call it?
0
Comment
Question by:FYPJ
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 8
  • 7
18 Comments
 
LVL 15

Expert Comment

by:Timbo87
ID: 10854876
Try this in your code behind.

yourWebControl.Attributes.Add("onclick", "NoWay()")
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 10855022
You can use
If userName <> dReader2("custID") Then
      ResponseClientScriptBlock ("way", "MsgBox('You can only edit your own posts!')" );
      Response.Redirect("ForumPosts.aspx?topicID=" & topicID)
End If

but you have to change the places of the response.redirect and the vb execution

B..M
0
 

Author Comment

by:FYPJ
ID: 10856584
Hi,

I can't use Timbo87's solution as i dun have an onclick command to run the script.

As for mmarinov, what is ResponseClientScriptBlock?
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 28

Expert Comment

by:mmarinov
ID: 10857183
0
 

Author Comment

by:FYPJ
ID: 10859394
Sorry i did not fully understand it. Begginner  here.

This was wat i tried:

        'Form the script that is to be registered at client side.
        Dim scriptString As String
        scriptString = "<script language=VB> function NoWay()"
        scriptString += "MsgBox(""You can only edit your own posts!"")"
        scriptString += "End Function"
        scriptString += "</script>"


        If userName <> dReader2("custID") Then
            Response.Redirect("ForumPosts.aspx?topicID=" & topicID)
            RegisterClientScriptBlock("clientScript", scriptString)

        End If

But still no alert box appeared.

What is the correct way?
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 10859444
try this

 Dim scriptString As String
        scriptString = "<script language=javascript> function NoWay(){"
        scriptString += "if(confirm(""You can only edit your own posts!""))"
        scriptString += "{document.location.href=" & "ForumPosts.aspx?topicID=" & topicID & "}"
        scriptString += "}"
        scriptString += "</script>"


        If userName <> dReader2("custID") Then
            RegisterClientScriptBlock("clientScript", scriptString)
        End If

B..M
0
 

Author Comment

by:FYPJ
ID: 10859565
Hmm... tried ur code but i directs me straight to the page without the alert box.
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 10859653
does it give you client errors ?
i don't think that this will give you something different but try this

        scriptString = "<script language=javascript> function NoWay(){"
        scriptString += "if(window.confirm('You can only edit your own posts!'))"
        scriptString += "{document.location.href=" & "ForumPosts.aspx?topicID=" & topicID & ";}"
        scriptString += "}"
        scriptString += "</script>"

Unfortunatelly i can not test it :-( right now
0
 

Author Comment

by:FYPJ
ID: 10859745
Nope it does not give any error, just directs me right to the page without any alerts.

Still doesn't work.

Thanks for ur effort to help. Can u get back to me soon when u find the solution?

Thanks!
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 10859827
i've send it to a friend of mine and this work i've tested

        Dim scriptString As String
        scriptString = "<script language=javascript>"
        scriptString += "if(confirm(""You can only edit your own posts!""))"
        scriptString += "{document.location.href=" & """ForumPosts.aspx?topicID=" & topicID & "";}"
        scriptString += "</script>"

        If IsPostBack Then
            RegisterClientScriptBlock("clientScript", scriptString)
        End If

B..M
0
 

Author Comment

by:FYPJ
ID: 10860045
Nope still doesn't work for me.

Damn this sucks...

Is there anyway i can generate a VB MsgBox from my VB codes without calling a script?

Sorry for the trouble.
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 10860122
i hate the qutes in vb :-(
this line is incorrect :-( scriptString += "{document.location.href=" & """ForumPosts.aspx?topicID=" & topicID & "";}"
it should be
scriptString += "{document.location.href=" & """ForumPosts.aspx?topicID=" & topicID & """;}"

about vb msgbox - i can not tell if it or it is not a way of doing this
i stopped use vb script for clients needs because it is workig only in ie


B..M
0
 

Author Comment

by:FYPJ
ID: 10860165
YES!!! Thank u very much it works!

But the confirm box gives the user a choice of yes or no to click, is there a way to edit it to show only 1 button?
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 10861175
it is not possible to edit yes/no button but you can use alert instead of confirm
but in this way it won't return true/false value but will acts like a normal mesage
is this what you want ?

B..M
0
 

Author Comment

by:FYPJ
ID: 10865795
Yes thats what i need.

So how do i structure my script so that when the user clicks ok on the alert box i will direcit them to this page?

document.location.href=" & """ForumPosts.aspx?topicID=" & topicID & """;
0
 
LVL 28

Accepted Solution

by:
mmarinov earned 75 total points
ID: 10866368
       Dim scriptString As String
        scriptString = "<script language=javascript>"
        scriptString += "alert(""You can only edit your own posts!"");"
        scriptString += "document.location.href=" & """ForumPosts.aspx?topicID=" & topicID & "";"
        scriptString += "</script>"

B..M
0

Featured Post

Revamp Your Training Process

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Access Schema 6 57
Need help with a query 14 54
Stop Git from being my repository 1 50
Call a VB.net function in Javascript 6 51
It’s quite interesting for me as I worked with Excel using vb.net for some time. Here are some topics which I know want to share with others whom this might help. First of all if you are working with Excel then you need to Download the Following …
The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question