добавить текстовое поле рядом с меткой в ​​форме Zend - PullRequest
0 голосов
/ 17 ноября 2010

Я использую Zend Framework.Я добавил новый элемент-флажок для формы.Пример флажка со значениями

abc xyz

Когда флажок установлен, я хочу добавить текстовые поля рядом с каждым флажком, который установлен (после закрытия тега метки).Я пытаюсь использовать jquery для этой цели.Может ли кто-нибудь, пожалуйста, помогите мне в этом вопросе.

1 Ответ

0 голосов
/ 17 ноября 2010

Следующая функция добавляет новый текстовый ввод после каждого флажка, когда он установлен, и удаляет текстовый ввод, когда флажок снят.Имя ввода текста основано на имени флажка.

jQuery(function($){
  var key = 'checkbox-master';
  $('input:checkbox').click(function(){
    var self = $(this);
    var next = self.next();
    if (this.checked){
      if (next.data(key)!=this){
        var n = this.name+'-text';
        self.after($('<input type="text" name="'+n+'">').data(key,this););
      }
    }else{
      if (next.data(key)==this) next.remove();
    }
  });
});

Интересно, действительно ли вы этого хотите, вместо того, чтобы просто динамически отображать и скрывать некоторые предварительно созданные текстовые входы, которыеимена, которые вы хотите.Это было бы чище, если предположить, что текстовые вводы всегда следуют сразу за флажками в коде:

jQuery(function($){
  $('input:checkbox').click(function(){
    $(this).next()[this.checked ? 'show' : 'hide']();
  });
});
...