Я хочу передать строковое значение, которое я получаю из текстового поля в focus() и blur(), , но почему я получу объект [object object]?Передача параметров: передача строкового значения в функции
Я получаю строковое значение каждого текстового поля успешно с каждым() и хранить строку в вар - var value_default = $this.val();
Тогда я прохожу этот var
в $this.focus(function (value_default) {..})
- я передать его неправильно?
Если я предупреждаю об этом value_default
, я получу [object oject] - alert (value_default);
Ниже весь код, если вы хотите увидеть его ...
$(".autohide").each(function(){
/* set the variable and store its value */
var $this = $(this);
var value_default = $this.val();
var parent_autohide = $this.parents('form');
var parent_button = $('input[type=submit]',parent_autohide).parents("div:.item-form").hide();
var parent_marginbottom = parseInt($this.parents("div:.item-form").css("marginBottom"));
$this.parents("div:.item-form").css({margin:'0px'});
alert(value_default); // I will get the string value of each textarea element
$this.focus(function (value_default) {
alert(value_default); // I will get [object object]
var $this = $(this);
$this.elastic();
$this.parents('div:.item-form').css({margin:'0px 0px '+parent_marginbottom+'px 0px'});
var $this_parent = $this.parents('form');
var $this_button = $('input[type=submit]',$this_parent).parents("div:.item-form").show();
}).blur(function(value_default){
alert(value_default); // I will get [object object]
var $this = $(this);
var value_current = $this.val();
if (value_current == value_default)
{
$this.css({ height: 'inherit'});
$this.parents('div:.item-form').css({margin:'0px'});
var $this_parent = $this.parents('form');
var $this_button = $('input[type=submit]',$this_parent).parents("div:.item-form").hide();
}
});
});
большое спасибо.
редактировать:
Я знаю, что вызывает ошибку в IE -
$this.css({height: 'inherit'}); // this line will create error on IE
$this.css({height:''}); // IE likes this
так, что случилось с «» наследуют, что IE не будет принимать его, как и другие браузеры ??
В этом случае '$ this.focus (function (value_default) {..})' вы фактически не передаете функцию value_default в функцию. Вы определяете функцию, где 'value_default' является первым аргументом (который в этом случае будет объектом события, отправленным из события фокуса) – climbage