Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Не срабатывает onclick функция (https://javascript.ru/forum/dom-window/56820-ne-srabatyvaet-onclick-funkciya.html)

imedia 05.07.2015 17:23

Не срабатывает onclick функция
 
<div id="table_btn">
<form>
<input id="fileupload" type="file">
</form>
</div>
<script type="text/javascript">
	function tstFile(val){
			var reg =new RegExp("^text/xml|x-json");
			var tst = val.match(reg);
			if (tst){
			return true;
			}
			return false;
			}
var elem = document.getElementById('fileupload'),
		url='/convers/upload_file/', // путь к обработчику (берём из атрибута action нашей формы)
		params = [],
		elName,
		elType;
		elType = 'file'; // тип текущего элемента (атрибут type)
		elName = 'files'; // имя текущего элемента (атрибут name)
		params.push(elName + '=' + elem.value);
	var node = document.createElement("P");
	var span = document.createElement("SPAN");

//Создаем элемент кнопка  
var uploadButton = document.createElement("BUTTON");
//Назначаем различные атрибуты кнопке 
uploadButton.value = "Processing..."; 
uploadButton.className = "btn btn-primary"; 
uploadButton.onclick = myFunction;
function myFunction() {
  alert()
}

elem.onchange=function(e){
var file=e.currentTarget.value
var textnode = document.createTextNode(file);         
var type=e.currentTarget.files[0].type
var type_text=type==='text/xml'?'to JSON':'to XML'
if(tstFile(type)){
var textnode_btn = document.createTextNode(type_text);         
uploadButton.appendChild(textnode_btn);
var cln = uploadButton.cloneNode(true);
span.appendChild(textnode); 
node.appendChild(span);
document.getElementById("table_btn").appendChild(node);
document.getElementById("table_btn").appendChild(cln);
}
};
</script>


кнопка появляется но при нажатии никакой реакции

imedia 05.07.2015 18:01

Решено клонирование мешает, только как быть если все таки нужно будет клонировать объект, почему атрибут onclick в клонированном объекте не срабатывает?

kostyanet 06.07.2015 06:00

Код не смотрел, а диалог выбора файлов приравнен к попапу и может блокироваться пока вручную не разблокируешь в списке блокиратора браузера.

Причем на некоторых сайтах даже значок предупреждения не появляется. Тупо ничего не происходит и все. Если закачка файлов имеет высокую важность, то показывайте нормальную кнопку типа file


Часовой пояс GMT +3, время: 19:23.