перенаправление не работает - PullRequest
1 голос
/ 12 августа 2011

У меня есть файл VM со следующими кодами:

ОБНОВЛЕНИЕ: Форма ввода #FW { дисплей: нет; }

    function showSelect()
    {
        var post = document.getElementById('post');
        var fwork = document.getElementById('FW');

        fwork.style.display = post.selectedIndex == 1 ? 'block' : 'none';

    }

    function getMeThere(){
            var post = document.getElementById('post');
            var fwork = document.getElementById('frwork');
            if( post.value.toString() == "dpost"){
                document.forms["adform"].action="https://google.com" ;                  
                document.forms["adform"].method="post" ; 
            } 
            else{
                if(fwork.value.toString() == "wap"){
                    document.forms["adform"].action="https://mail.yahoo.com" ;
                    document.forms["adform"].method="post" ; 
                }
                else {
                    document.forms["adform"].action="bbc.co.uk" ;
                    document.forms["adform"].method="post" ; 
                }
            }
            document.forms["adform"].submit() ; 
        }
    </script>
</head>

<body>
    <form name="forum" id="adform" >
        <label>Payment Amount:</label>
        <input type = "text" name="paymentAmount" value=""/>
        <label> Reference:</label>
        <input type = "text" name="Reference" value=""/><br />
        <label>Choose post</label><br/>
        <select name="postCode" onchange="showSelect()" id = "post">
          <option value="dpost">Desktop post</option>
          <option value="mpost">Mobile post</option>
        </select><br/>
        <div id = "FW">
            <label>Choose Your Toolkit</label><br/>
            <select name="frwork" id = "frwork">
                <option id=""></option>
                <option id="jqm">jQuery Mobile</option>
                <option id = "wap">Webapp-Net</option>
                <option id = "tst">a Test</option>
            </select>
        </div>
        <input type="submit" onclick="getMeThere()"/>           
    </form>
</body>

перенаправление вообще не работает, и я не могу найти проблему. обратите внимание, что URL-адреса являются поддельными, потому что я мог опубликовать реальный URL из-за проблем с безопасностью.

1 Ответ

1 голос
/ 12 августа 2011

Опечатка? это сработало бы, если бы вы изменили:

document.forms[this].action

до

document.forms["adform"].action

Редактировать

У вас также есть var fwork = document.getElementById('FW');, а затем fwork.value.toString(), но FW - это DIV , а не SELECT.

Измените выбор на <select id="frwork" name="frwork"> и прочитайте его с помощью var fwork = document.getElementById('frwork');

Редактировать 2

Ваш fwork.value.toString() == "wap" никогда не будет верным, поскольку единственный случай, когда "WAP" - это <option id = "wap">w-Net</option>, который не является .value.

Измените HTML на:

        <select name="frwork" id = "frwork">
            <option value=""></option>
            <option value="jqm">jQuery Mobile</option>
            <option value = "wap">Webapp-Net</option>
            <option value = "tst">a Test</option>
        </select>

И чтобы прочитать выбранное значение заменить:

if (fwork.value.toString() == "wap") {

с:

if (fwork.options[fwork.selectedIndex].value == "wap") {
...