Button JS 交互


Button 及 Button group 与 JS 交互。

按钮 loading 状态

默认文字

默认的文字为 loading...

 
<button type="button" class="am-btn am-btn-primary btn-loading-example">Submit - Button</button>
<input type="button" class="am-btn am-btn-primary btn-loading-example" value="Submit - Input" />
$('.btn-loading-example').click(function () {
  var $btn = $(this)
  $btn.button('loading');
    setTimeout(function(){
      $btn.button('reset');
  }, 5000);
});

自定义选项

可以在元素上添加 data-am-loading 来设置选项:

 
<button type="button" class="am-btn am-btn-primary btn-loading-example" data-am-loading="{spinner: 'circle-o-notch', loadingText: '加载中...', resetText: '加载过了'}">按钮 - button 元素</button>

<input type="button" class="am-btn am-btn-secondary btn-loading-example" value="按钮 - input 元素" data-am-loading="{loadingText: '努力加载中...'}" />
$('.btn-loading-example').click(function () {
  var $btn = $(this)
  $btn.button('loading');
    setTimeout(function(){
      $btn.button('reset');
  }, 5000);
});

单按钮状态切换

按钮状态:未激活

<button type="button" class="am-btn am-btn-primary" data-am-button>切换状态</button>

复选框

<div class="am-btn-group" data-am-button>
  <label class="am-btn am-btn-primary">
    <input type="checkbox" name="doc-js-btn" value="苹果"> 苹果
  </label>
  <label class="am-btn am-btn-primary">
    <input type="checkbox" name="doc-js-btn" value="橘子"> 橘子
  </label>
  <label class="am-btn am-btn-primary">
    <input type="checkbox" name="doc-js-btn" value="香蕉"> 香蕉
  </label>
</div>
<script>
  $(function() {
    var $cb = $('[name="doc-js-btn"]');
    $cb.on('change', function() {
      var checked = [];
      $cb.filter(':checked').each(function() {
        checked.push(this.value);
      });

      console.log('复选框选中的是:', checked.join(' | '));
    });
  });
</script>

单选框

<div class="am-btn-group doc-js-btn-1" data-am-button>
  <label class="am-btn am-btn-primary">
    <input type="radio" name="options" value="选项 1" id="option1"> 选项 1
  </label>
  <label class="am-btn am-btn-primary">
    <input type="radio" name="options" value="选项 2" id="option2"> 选项 2
  </label>
  <label class="am-btn am-btn-primary">
    <input type="radio" name="options" value="选项 3" id="option3"> 选项 3
  </label>
</div>
<script>
  // 获取选中的值
  $(function() {
    var $radios = $('[name="options"]');
    $radios.on('change',function() {
      console.log('单选框当前选中的是:', $radios.filter(':checked').val());
    });
  });
</script>