передать строку запроса из aspx в html обратно в aspx, используя JavaScript, проблема со связью - PullRequest
0 голосов
/ 20 января 2011

Я передаю строку запроса со своей предыдущей страницы на эту страницу, а затем хочу передать ее на следующую страницу, но она не работает.

<script type="text/javascript">
           function qs(search_for) {
        var query = window.location.search.substring(1);
        var parms = query.split('&');
        for (var i=0; i<parms.length; i++) {
            var pos = parms[i].indexOf('=');
            if (pos > 0  && search_for == parms[i].substring(0,pos)) {
                return parms[i].substring(pos+1);;
            }
        }
        return "";
    }
    </script>

вот ссылка

<a href="http://www.TEST.com/TEST/TEST/TEST.aspx?comp=" & <script type="text/javascript"> document.write(qs("comp")); </script> & "name=test" >CLICK HERE </a></font></b></p>

Ответы [ 3 ]

1 голос
/ 20 января 2011

Вероятно, проще, гибче и удобнее в обслуживании, просто вставьте его в скрытое поле и затем извлеките его с помощью простого document.getElementById ().

0 голосов
/ 20 января 2011

хорошо, ваш синтаксис очень неправильный.Вы не можете написать новый элемент перед закрытием первого тега elements: <element <element2 /> />.вот функция, которую вы можете использовать: function createLink(address,param,text){ address += ((address.indexOf('?') == -1) ? "?" : "&") + param + "=" + qs(param); document.write(''+text+''); } и затем, когда вы хотите вставить нужную ссылку, вставив тег сценария, вызывающий функцию «createLink» с нужными параметрами:
<script type="text/javascript"> createLink("http://www.TEST.com/TEST/TEST/TEST.aspx?name=test","comp","CLICK HERE"); <script/>

Надеюсь это поможет!

ps: вам, вероятно, следует использовать только одну точку с запятой, а не две одновременно.

0 голосов
/ 20 января 2011
  • Страница 1 Создает URL-строку запроса

  • Страница 2 добавляет это на вторую страницу
    <asp:hiddenfield runat="server" id="hdncomp" value=""/> <asp:hiddenfield runat="server" id="hdnname" value=""/>

    Сейчас, в вашем событии загрузки запустите следующий код:

    Me.hdncomp = Request.QueryString("comp")
    Me.hdnname = Request.QueryString("name")
    
  • Наконец, когда вы перейдете на страницу 3, используйте значения из hdncomp и hdnname в качестве значений параметров.Например:

Response.Redirect("page3.aspx?comp=" & hdncomp & "&name=" & hdnname)

непроверенный код

...