2015-03-04 2 views
0

Я хотел бы начать с того, что я очень новичок в программировании. Я разрабатываю сайт (www.example.com), который имеет несколько гиперссылок.Как передать переменную через гиперссылку?

Когда пользователь посещает мой сайт, я хочу, чтобы все ссылки были удалены по бэк-офису другого сайта (www.tvcmatrix.com/mhammonds). Как настроить ссылки для перенаправления на значение строки запроса на основе введенного текста из формы, которая находится на моем сайте (www.example.com)?

Другими словами, если URL-адрес читает 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>

Вот "viral.asp" файл в файле "form.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>

ответ

0

Как передать переменную через гиперссылку?

Для статеров вы не используете гиперссылку, вы отправляете форму.

Request.QueryString("user"); ищет что-то на querystring. Вы используете POST, который имеет поля формы.

Используйте Request("user");, который будет захватывать значение независимо от того, находится ли оно в строке запроса или поле POST. Если вы хотите принудительно распознать только поля формы, используйте Request.Form("user");

+0

Первые два файла, которые я опубликовал, работают именно так, как я хочу, чтобы они работали. Это файл под названием «front.asp», с которым у меня проблемы. Я хочу, чтобы ссылка «Нажмите здесь» имела переменную в ней на основе значения, введенного из формы. Если значение не введено, я хочу, чтобы ссылка была по умолчанию для моего имени пользователя, «mhammonds». @Diodeus – Marquell

+0

@Diodeus - форма OP имеет атрибут 'method =" get "', поэтому он в основном передает значение querystring – John

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> 

Если вы действительно не хотите легко чтобы перезагрузить фронт.asp, тогда вам нужно посмотреть ajax и добавить соответствующий тег к вашему вопросу.

+0

Прошу прощения. Я должен был разработать немного больше. Я хочу, чтобы родительская страница осталась прежней. Я хочу, чтобы ссылки изменялись в зависимости от значения строки запроса. Когда они вводят значение в форму, я не хочу, чтобы ссылки немедленно менялись. IFrame выводит URL-адрес с добавленной строкой запроса, повторяя любое имя пользователя, которое они вводили, которое пользователь может скопировать и вставить в браузер. После того, как они c & p, что url, ссылки будут изменены на основе строки запроса. Дайте мне знать, если вам нужен пример, чтобы вы могли лучше понять нужную мне помощь. Я действительно ценю что угодно. @John – Marquell

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