Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.10.2012, 15:44
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

Не берется this.id
код html:
<html>
<head>
	<script type="text/javascript" src="jquery.js"></script>
	<script type="text/javascript" src="uploadimage.js"></script>
	<script>
function test(name) {
    $("input[name="+name+"]").upload({
    name: 'file',
    method: 'post',
    action: './ajaximage.php',
    enctype: 'multipart/form-data',
    params: {
    },
    autoSubmit: true,
    onSubmit: function() {
    },
    onSelect: function() {
    },
    onComplete: function(data) {
    }
  });
}
	</script>
</head>
<body>
<input type="file" name="upload" id="upload" onchange='test("upload")'>
<div id="1234"></div>
</body>

</html>


Код javascript:
(function($){
	$.fn.upload = function(options) {
		options = $.extend({
			name: 'file',
			enctype: 'multipart/form-data',
			action: '',
			autoSubmit: true,
			onSubmit: function() {},
			onComplete: function() {},
			params: {}
		}, options);
//Если делаем так, то все работает:
$("#1234").append(this);
//а если так, то нет:
alert(this.id)
	}
});


В чем проблемма, почему так:
alert(this.id)

пишет, что не определено. Однако если так:
$("#1234").append(this);
, то лемент перебрасывается в нужный Div?
Как получить Id от this?
Ответить с цитированием
  #2 (permalink)  
Старый 04.10.2012, 15:54
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

А зачем вам id?
$(this).attr("id")
__________________
.

Последний раз редактировалось Skipp, 04.10.2012 в 15:57.
Ответить с цитированием
  #3 (permalink)  
Старый 04.10.2012, 16:04
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

Спасибо, в дальнейшем нужно Div создать с 'div_'+id
Ответить с цитированием
  #4 (permalink)  
Старый 04.10.2012, 16:05
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

а зачем?) Всё по сути и без этого можно связать
__________________
.
Ответить с цитированием
  #5 (permalink)  
Старый 04.10.2012, 16:12
Аспирант
Отправить личное сообщение для Nubi Посмотреть профиль Найти все сообщения от Nubi
 
Регистрация: 06.08.2008
Сообщений: 43

this внутри определения метода (upload в данном случае) будет указывать на объект jQuery.
Поэтому можно так: this[0].id
Ответить с цитированием
  #6 (permalink)  
Старый 04.10.2012, 22:41
Профессор
Отправить личное сообщение для Hoshinokoe Посмотреть профиль Найти все сообщения от Hoshinokoe
 
Регистрация: 08.01.2012
Сообщений: 253

Сообщение от Nubi Посмотреть сообщение
this внутри определения метода (upload в данном случае) будет указывать на объект jQuery.
Поэтому можно так: this[0].id
Чтобы совсем по jquery, то this.get(0).id
Ответить с цитированием
  #7 (permalink)  
Старый 05.10.2012, 14:41
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Или this.eq(0).id
__________________
.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
откуда берется промежуток? (DOCTYPE виноват) mister_maxim (X)HTML/CSS 5 27.03.2009 02:11