Откройте новую вкладку после кнопки отправки и получите данные из выпадающего меню

0

Я начинаю изучать JavaScript на данный момент, у меня есть следующий код для создания выпадающего меню в файле index.html

<select id="secondbox" name="project">
    <option selected value="">---Generate---</option>
    <script src="myjs.js"> </script>
</select>

<input value="Submit" id="submit" type="submit"> </input>
<script>
// new tab here
$("input[type='submit']").click(function(){
    window.open('graph.html');
});
</script>

Мой скрипт хорошо работает при создании данных в раскрывающемся меню. Теперь я использую кнопку отправки, чтобы открыть новую вкладку с html файлом, называемым "graph.html". "Graph.html" имеет следующий код

    <div id="graph"> </div>
    <script src="getjs.js"> </script>

Мой файл JavaScript - "getjs.js" с очень простой функцией

$(function(){
    // this code works and display TEST NEW PAGE
    //$("#graph").append("<strong>TEST NEW PAGE</strong>");

    // not working
    var searchName=$("select[name='project']").val();
    alert(searchName);
});

Я хочу, чтобы появилось окно предупреждения, такое как "ProjectYZX", соответствующее раскрывающимся меню, выбранным в моем файле "index.html" на моей странице "Новая вкладка"

Может ли кто-нибудь дать мне какие-нибудь намеки?

Спасибо.

Обновление части

    $.getJSON("mydata.json",function(data){
    var searchName=sessionStorage.getItem("myval");

    $.each(data,function(index,obj){
        for(var i in data.names){
            if(searchName==data.names[i].Name){
                alert(data.names[i].Name);
            }   
        }
    });
    });
Теги:
drop-down-menu

1 ответ

0

Вы можете попытаться сохранить значение своего раскрывающегося меню в sessionStorage, а затем извлечь его из своего нового окна:

В вашем index.html :

<select id="secondbox" name="project">
    <option selected value="">---Generate---</option>
    <script src="myjs.js"> </script>
</select>

<input value="Submit" id="submit" type="submit"> </input>

<script>
$(function() {
    // Initialize the drop-down menu value in sessionStorage
    sessionStorage.setItem("my_select_value", $("#secondbox").val());

    // Storing the drop-down menu value in sessionStorage on change
    $("#secondbox").change(function() {
        sessionStorage.setItem("my_select_value", $(this).val());
    });


    // new tab here
    $("input[type='submit']").click(function(){
        window.open('graph.html');
    });
});
</script>

В вашем скрипте getjs.js :

$(function(){
    // Retriving the drop-down menu value from the sessionStorage
    var my_select_value = sessionStorage.getItem("my_select_value");
    alert(my_select_value);
});

Примечание: в зависимости от ваших потребностей вы также можете использовать localStorage вместо sessionStorage :)

  • 0
    Большое спасибо, это прекрасно работает: D
  • 0
    @ user3063604: Добро пожаловать, приятель! ;) Не забудьте подтвердить ответ: D
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню