всплывающее текстовое поле window.open при фокусе при всплывающем окне

0

У меня есть страница, которая открывает всплывающее окно

<script>
var popup = window.open('forms/trucksform.php');
popup.moveTo(0,0);
popup.resizeTo(318,340);
popup.focus();
popup.moveBy(500,200);
</script>

как я могу сосредоточиться на текстовом поле внутри этого всплывающего окна

   <div class="mainform">
        <form name="addtrucks" id="addtrucks" method="POST" action="<?php echo  $editFormAction; ?>">
            <label>Truck Plate Number:</label>
            <input type="text" name="truck_plate_no" id="truck_plate_no" />
            <br/>
            <input name="button" type="submit" id="button" onclick="MM_validateForm('truck_plate_no','','R');return document.MM_returnValue"/>
            <input type="hidden" name="MM_insert" value="add" />
        </form>
    </div>
Теги:

2 ответа

1
Лучший ответ

Вы можете использовать два способа: с родительской страницы вы можете получить доступ к всплывающему окну:

<html>
<body>
<script>
var popup = window.open('trucksform.php');
popup.onload = function() {
    popup.document.getElementById("truck_plate_no").focus();
};
popup.moveTo(0,0);
popup.resizeTo(318,340);
popup.focus();
popup.moveBy(500,200);

</script>
</body>
</html>

Или добавьте начальное состояние в всплывающее окно (таким образом, лучше, потому что у вас будет ссылка на элемент на той же странице):

 <div class="mainform">
        <form name="addtrucks" id="addtrucks" method="POST" action="<?php echo  $editFormAction; ?>">
            <label>Truck Plate Number:</label>
            <input type="text" name="truck_plate_no" id="truck_plate_no" />
            <br/>
            <input name="button" type="submit" id="button" onclick="MM_validateForm('truck_plate_no','','R');return document.MM_returnValue"/>
            <input type="hidden" name="MM_insert" value="add" />
        </form>
    </div>
<script>
   document.getElementById("truck_plate_no").focus();   
</script>

Обновление для Chrome: похоже, что манипуляция с всплывающим окном блокирует некоторые функции пользовательского интерфейса. Вы можете добавить в текст атрибут autofocus="autofocus" во всплывающем окне. Чтобы удалить манипуляции со всплывающим окном, используйте параметры для open:

<html>
<body>
<script>
var popup = window.open('trucksform.php', 'myWindowName', 'left=200,top=500,width=318,height=340');
</script>
</body>
</html>
  • 0
    это все еще не работает, это вещь Google Chrome ...
  • 0
    Фокус на всплывающем окне может не работать на Google Chrome, я думаю.
Показать ещё 2 комментария
0

Попробуйте

$("#truck_plate_no").focus();
  • 0
    где я должен положить это? на первой странице или всплывающая страница?
  • 0
    Я положил код на обеих страницах до сих пор не работает.
Показать ещё 2 комментария

Ещё вопросы

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