Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 858
  • Last Modified:

How to hide the value of src in an HTML frame?

I want to use this code:
 <FRAMESET border=0 rows="100%,*" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0>
        <frame src="http://www.google.com" scrolling=auto frameborder="no" border=0 noresize>
        <frame topmargin="0" marginwidth=0 scrolling=no marginheight=0 frameborder="no" border=0 noresize>
     </FRAMESET>

But i want to hide the value of src. How can i do this?

ASP.NET 1.1, Javascript, HTML
0
alexmac05
Asked:
alexmac05
  • 6
  • 4
  • 2
  • +1
2 Solutions
 
shubham_gniiitCommented:
0
 
alexmac05Author Commented:
I am sorry. I don't know which part of the example above helps me? could you be more specific?

Thanks.
0
 
Gurvinder Pal SinghCommented:
do you want to remove the attribute? use removeAttribute() for the same
http://www.java2s.com/Tutorial/JavaScript/0420__HTML-Tags/RemoveattributebycallingtheremoveAttributefunction.htm

Could you be a more specific about hiding the attribute please? from whom are you hiding the attribute?
If you want you can always not specify the src value in html code, and do it via javascript eg

 <FRAMESET border=0 rows="100%,*" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0>
        <frame id="frame1" scrolling=auto frameborder="no" border=0 noresize>
        <frame topmargin="0" marginwidth=0 scrolling=no marginheight=0 frameborder="no" border=0 noresize>
     </FRAMESET>

document.getElementById("frame1").setAttribute("src","http://www.google.com");
0
Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

 
alexmac05Author Commented:
Hi Gurvinder372,

I am new to javascript, and your code isn't working. Am i missing something? did I place the document.getElementById("frame1")...etc... in the wrong location?

Thanks!

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <FRAMESET id="frame1" border=0 rows="100%,*" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0>
        <frame scrolling=auto frameborder="no" border=0 noresize>
        <frame topmargin="0" marginwidth=0 scrolling=no marginheight=0 frameborder="no" border=0 noresize>
     </FRAMESET>
      document.getElementById("frame1").setAttribute("src","http://www.google.com");
</head>


</html>
0
 
Gurvinder Pal SinghCommented:
yes,

it should be


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
 
</head>

    <FRAMESET id="frame1" border=0 rows="100%,*" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0 onload="putSource()">
        <frame scrolling=auto frameborder="no" border=0 noresize>
        <frame topmargin="0" marginwidth=0 scrolling=no marginheight=0 frameborder="no" border=0 noresize>
     </FRAMESET>

    <script>
     function putSource()
    {
      document.getElementById("frame1").setAttribute("src","http://www.google.com");
    }
    </script>

</html>
0
 
alexmac05Author Commented:
Thanks Gurvinder372. I think this is very close to a solution. for some reason it doesn't render the google.com page though.

I uploaded the code cut and paste from your post. Does it work for you? There must be something very small wrong with it. I tried to troubleshoot it myself but I wasn't able to make it have google.com appear.

thanks again

ps: rename it to test.html


test.html.txt
0
 
Gurvinder Pal SinghCommented:
ohh...my bad...i think using javascript you cannot set a location of different domain of a frame, due to same origin policy.

try this
 Was this comment helpful?
Yes No
gurvinder372:
yes,

it should be


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
 
</head>

    <FRAMESET id="frame1" border=0 rows="100%,*" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0 onload="putSource()">
        <frame scrolling=auto frameborder="no" border=0 noresize>
        <frame topmargin="0" marginwidth=0 scrolling=no marginheight=0 frameborder="no" border=0 noresize>
     </FRAMESET>

    <script>
     function putSource()
    {
      document.getElementById("frame1").innerhtml = document.getElementById("frame1").innerhtml  + "<frame scrolling=auto frameborder='no' border=0 noresize src='http://www.google.com' >";
    }
    </script>

</html>
0
 
Gurvinder Pal SinghCommented:
sorry ignore last post

ohh...my bad...i think using javascript you cannot set a location of different domain of a frame, due to same origin policy.

try this

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
 
</head>

    <FRAMESET id="frame1" border=0 rows="100%,*" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0 onload="putSource()">
        <frame topmargin="0" marginwidth=0 scrolling=no marginheight=0 frameborder="no" border=0 noresize>
     </FRAMESET>

    <script>
     function putSource()
    {
      document.getElementById("frame1").innerhtml = document.getElementById("frame1").innerhtml  + "<frame scrolling=auto frameborder='no' border=0 noresize src='http://www.google.com' >";
    }
    </script>

</html>
0
 
alexmac05Author Commented:
That doesn't work either. does it work for you?
Thanks again for your help.
0
 
wmadrid1Commented:
Hello,
The code of gurvinder372 could work if you try it with IFRAME tag

Trythe code below with a changes i made, i tested it over Firefox 3.6.8


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>

    <IFRAME id="frame1" border=1 width="100%" height="100%" frameborder="no" marginleft=0 margintop=0 marginright=0 marginbottom=0></IFRAME>

    <script>
     function putSource()
    {
      document.getElementById("frame1").src='http://www.google.com';
    }
	putSource();
    </script>
</body>
</html>

Open in new window

0
 
alexmac05Author Commented:
yes, this works. Thank you!

The only thing left to do with this code is to hide the URL using javascript. Once that happens, then that is the solution.

Any idea how to do that? It would be ideal to call a ASP.NET function to provide the link. is that possible?

Basically, I want to set the src value in the code behind C# code or using javascript somehow, so that if the user does a view source they can't see the value.

document.getElementById("frame1").src='http://www.google.com';

Any ideas?

Thanks so much.
0
 
alexmac05Author Commented:
I am moving to a behind the scenes back end solution to this problem.

Thanks everyone for helping.
0
 
wmadrid1Commented:
You can try it, using AJAX
Calling any script language (PHP, .NET, etc)
And in the response of script set the
document.getElementById("frame1").src='http://www.google.com';

Below is the code, to do the AJAX call

The call for it, could be like this
    <script>
     function putSource()
    {
      getAjax("URL of the .NET script ");
    }
        putSource();
    </script>

You can put the below code in a library and cerypt the javascript, to get the reading of it more dificult

<script>
var conn; 	//Conn object

function getAjax(page)
{
	conn = getXMLHttpRequester();
	conn.onreadystatechange = process;
	conn.open('GET',page, true);
	conn.send(null);
}

function process()
{
	if(conn.readyState == 4)
	{
		if (conn.status == 200) 
		{
			//HERE WE EXECUTE THE reponse javascript from .NET
			eval(conn.responseText);
			conn.abort();
		}
	} 
}

function getXMLHttpRequester()
{
    var xmlHttpRequest = false;
    try
    {
        if(window.ActiveXObject)
        {
            for(var i = 5; i; i--)
            {
                try
                {
                    if(i == 2)
                    {
                        xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");    
                    } else {
                        xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP." + i + ".0");
                    }
                    break;
                }
                catch(excNotLoadable)
                {
                    xmlHttpRequest = false;
                }
            }
        }
        else if(window.XMLHttpRequest)
        {
            xmlHttpRequest = new XMLHttpRequest();
        }
    }
    
    catch(excNotLoadable)
    {
        xmlHttpRequest = false;
    }
    
    return xmlHttpRequest;
}
</script>

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 6
  • 4
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now