如何通过超链接传递变量?

时间:2015-03-04 17:45:25

标签: javascript html variables hyperlink asp-classic

我想开始说我对编程很新。我正在开发一个有多个超链接的网站(www.example.com)。

当用户访问我的网站时,我希望所有链接都默认为我使用的另一个网站(www.tvcmatrix.com/mhammonds)的后台办公室。如何根据我网站(www.example.com)上的表单中的输入文本将链接设置为重定向到查询字符串值?

换句话说,如果网址为www.example.com/?user=abelliard,如何将网站上的所有链接更改为“www.tvcmatrix.com/abelliard”?如果没有查询字符串,那么我希望链接为www.tvcmatrix.com/mhammonds。

以下是我网站上名为“form.asp”

的表单的文件

<!DOCTYPE html>
<html>
    <body>
        <form action="viral.asp" method="get" name="input" target="_self">
            Your TVC Matrix Associate ID: <input type="text" name="user" />
            <input type="submit" value="Submit" />
        </form>
    </body>
</html>

这是“form.asp”文件中的“viral.asp”文件。

<%@ language="javascript"%>
<!DOCTYPE html>
<html>
    <body>
    <%
        var id = Request.QueryString("user");                    
        Response.Write("Your URL is: www.mca.com/?user=" + id)
    %>
    </body>
</html>

以下是名为“front.asp”的网站的最后一个文件和前端

我有'病毒'和'形式'打包。我需要帮助的主要事情是网站的前端处理链接。

我不知道我是否有点偏离或偏离轨道,但我所拥有的根本不起作用所以我知道这是错误的。

<!DOCTYPE html>
<html>
    <head>
        <title>Main Site</title>
    </head>
        <body>
            <a href="http://www.tvcmatrix.com/" + id="function" target="_blank" name="link">Click Here!</a>
            <iframe width="450" height="40" src="form.asp">                
            </iframe>
        </body> 
            <script lang="javascript" type="text/javascript">
                function tvcid() {
                    var username = document.getElementById('username');
                    if (username.value != "") {
                        tvcid = "username";
                    }
                    else {
                        tvcid = "mhammonds";
                    }
                }
            </script>               
</html>

2 个答案:

答案 0 :(得分:0)

  

如何通过超链接传递变量?

对于州议员,您没有使用超链接,而是提交表单。

Request.QueryString("user");正在寻找查询字符串上的内容。您正在使用包含表单字段的POST。

使用Request("user");,无论是查询字符串还是POST字段,都会获取值。如果您只想强制识别表单字段,请使用Request.Form("user");

答案 1 :(得分:0)

页面加载时,服务器端会执行经典ASP代码。您正在iframe中提交表单,结果页面也会显示在iframe中。此结果无法更改父页面上的任何内容,因为它已加载。最简单的方法是将所有代码放在同一页面上。我将向您展示如何使用VBS作为脚本语言,这是我习惯的,但它应该很容易使用服务器端JS

<%@ language="VBScript"%>
<%
 Dim id
 If Request("user") <> "" then
 id = Request("user")
 else
 id = "mhammonds"
 End if
%>
<!DOCTYPE html>
<html>
    <head>
        <title>Main Site</title>
    </head>
        <body>
            <a href="http://www.tvcmatrix.com/<%= id %>" target="_blank" name="link">Click Here!</a><br />
        <% If Request("Submit") <> "Submit" then %>
            <form method="get">
        Your TVC Matrix Associate ID: <input type="text" name="user" />
        <input type="submit" name="submit" value="Submit" />
        </form>
        <% else 
        Response.Write("Your URL is: www.mca.com/?user=" & id)
        End If %>
    </body> 

</html>

如果你真的不想重新加载front.asp那么你需要查看ajax,并在你的问题中添加相关标签