2

我只是想知道Jeditable Plugin的一件事。我已经在使用并且效果很好但是如果我需要输入类型号怎么办?演示示例涵盖:textarea、select、text 和不同的事件

如果我需要在事件单击时指定输入类型号怎么办?

这是我的代码:

    $('.click').editable(function(value, settings) { 
     console.log(this);
     console.log(value);
     console.log(settings);
     return(value);
  }, {
      event     : "click",
      submit  : 'OK',
      style  : "inherit"
 });
4

2 回答 2

2

或者简单地创建您自己的自定义类型,如文档中的描述:http: //www.appelsiini.net/2007/custom-input-types

这应该工作得很好:

$.editable.addInputType('number', {
  element : function(settings, original) {
      var input = $('<input type="number">');
      $(this).append(input);
      return(input);
  },
  submit : function (settings, original) {
      if (isNaN($(original).val())) {
          alert('You must provide a number')
          return false;
      } else {
          return true;
      }
  }
});

接着:

$('.edit_number').editable(page_url, 
    {
        type:   'number'
    }
);
于 2015-04-20T12:25:05.267 回答
0

好的,我已经这样做了,它看起来很有效:

我首先在我的jquery.jeditable.js中添加了一个新的输入类型

    number: {
        element : function(settings, original) {
            var input = $('<input type="number">');
            if (settings.width  != 'none') { input.attr('width', settings.width);  }
            if (settings.height != 'none') { input.attr('height', settings.height); }
            /* https://bugzilla.mozilla.org/show_bug.cgi?id=236791 */
            //input[0].setAttribute('autocomplete','off');
            input.attr('number','off');
            $(this).append(input);
            return(input);
        }
    },

然后我在我的 html 页面中创建了脚本:

    $('.number').editable(function(value, settings) { 
     console.log(this);
     console.log(value);
     console.log(settings);
     return(value);
  }, { 
     type    : 'number', 
     style  : "inherit"
 });

在我的html中

<p class="number" style="text-align: right;">000,00</p>
于 2012-10-14T10:28:00.997 回答