отследить появления содержимого в iframe и input
Добрый день,
Возможно ли отследить появления какого-либо содержимого в iframe и в input? Например, когда что-то появляется в iframe и в input, сработает какое-нибудь событие? |
Не, на одном домене
|
Цитата:
Скажем так - если пользователь что-то ввёл в input и в iframe, становиться активной кнопка "далее". А если пусто, то кнопка не активна. |
Rise,
В iframe может быть и input, и кнопка, и много чего еще, и кнопка может становиться активной в зависимости от состояния input - я так понял задачу ТС Что-то вроде В основной странице
<button id="test">Тест активности в iframe</button>
<iframe id="ifr" src="http://sample.dom/iframe.html"></iframe>
<script>
test.onclick = function() {
alert(ifr.contentWindow.document.querySelector("#next").style.display);
}
</script>
В странице, загружаемой в iframe
<input id="inp" type="text">
<button id="next" style="display:none">Next</button>
<script>
inp.oninput = function() {
if(this.value) next.style.display = "block";
else next.style.display = "none";
}
</script>
|
Цитата:
<?php
Error_Reporting(E_ALL & ~E_NOTICE);
session_start();
echo '<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">';
echo '<link rel="stylesheet" type="text/css" href="order.css">';
$date = date("d.m.Y H:i").'</p>';
echo "connected as <b>".$_SESSION['user']."</b></p>";
echo $date;
?>
<form method = "post" action = "new_sql_update.php" onsubmit="return save()"> <input type="hidden" id="content1" name="content1" value="" /> <input type="hidden" id="content2" name="content2" value="" /> Items </br></br> <iframe src="" id="items" name="items"></iframe></br> quantity </br><input type = "textarea" id ="quantity" name = "quantity"/></br> Remarks </br></br> <iframe src="" id="remarks" name="remarks"></iframe></br> <input type="submit" value="submit"/> <input type="reset" name="reset" value="clear"/> </form> <form action="Exit.php" method="get"> <button type="submit"><b>EXIT</b></button> </form>
<script>
items.document.designMode = "on";
remarks.document.designMode = "on";
function save(){
document.getElementById('content1').value = document.getElementById('items').contentWindow.document.body.innerHTML;
document.getElementById('content2').value = document.getElementById('remarks').contentWindow.document.body.innerHTML;
return true;}
</script>
Как можно сделать так, что, если во фреймах items и remarks и в inpute quantity есть что-нибудь, кнопка submit появлялась или становилась активной? |
Некоторые эксперименты - неудачные
<input type="textarea" id="content1" name="content1" value="" readonly>
</br>quantity <input type = "textarea" id ="quantity" name = "quantity"/>
<iframe src="" id="items" name="items" style="width:100%;height:100%""></iframe>
<script>
var HTML = "<html><head></head><body><u>Document</u>"
+ "<b>HTML</b></body></html>";
items.document.open();
items.document.write(HTML);
items.document.close()
items.document.designMode = "on";
quantity.oninput = function() {
if(this.value )
content1.value = items.contentWindow.document.body.innerHTML;
}
</script>
|
Dilettante_Pro
Объяснил нэправильно:cray: Вот такой код <form method = "post" action = "1.php"> quantity </br><input type = "textarea" id = "quantity" name = "quantity" onkeyup = "check()"/></br> Items </br><iframe src="" id = "items" name = "items" onkeyup = "check()"></iframe></br> <input type="submit" id = "send" disabled="disabled" value="submit"/></form>
function check() {
items.document.designMode = "on";
var i = document.getElementById('quantity');
var j = document.getElementById('items').contentWindow.document.body.innerHTML;
if (i!=""&&j!=""){document.getElementById('send').disabled = false;}}
не работает. Работает, если убрать iframe, т.е. кнопка submit становится активной, если что-то ввести в поле input. Может событие onkeyup для iframe не годится? |
Rise, спасибо!
Заработало
<input type="textarea" id="content1" name="content1" value="" readonly>
</br>quantity <input type = "textarea" id ="quantity" name = "quantity"/>
<iframe src="" id="items" name="items" style="width:100%;height:100%""></iframe>
<script>
items.document.designMode = "on";
quantity.oninput =check;
items.oninput = check;
function check() {
if(quantity.value && items.document.body.innerHTML)
content1.value = items.document.body.innerHTML;
else content1.value = '';
}
</script>
atanov, можете вместо заполнения content1.value активировать-дезактивировать кнопку |
Цитата:
|
Цитата:
Цитата:
Вопрос по Internet Explorer, oninput надо заменять на textInput? Вроде написано, что с версии 9 oninput работает, но у меня почему-то нет. Chrome и Opera нормально |
| Часовой пояс GMT +3, время: 22:50. |