状态按钮脚本块表单提交?

问题描述 投票:0回答:1

我正在使用Twitter Bootstrap Button JS,有状态按钮部分。

一切都按预期工作,但有时单击按钮 - 它“阻止”表单提交事件。然后表单未提交,按钮不会更改回启用状态。

基本上最后我没有提交表单和禁用按钮。

怎么了?

标记 - 这里没什么特别的,只是一些wicket标记:

<button class="btn btn-primary" wicket:id="submit" type="submit">
    <i class="icon-white icon-ok"></i>&nbsp;<wicket:message key="label"/>
</button>

和按钮类。只需在加载页面时附加JS工作和执行脚本所需的属性:

public class StatefullButton extends Button {

    public StatefullButton(String id, IModel<String> loadingText) {
        super(id);
        setOutputMarkupId(true);
        add(AttributeModifier.append("data-loading-text", loadingText));
    }

    @Override
    public void renderHead(IHeaderResponse response) {
        response.renderJavaScriptReference(BootstrapButtonPluginResourceReference.get());
        response.renderOnDomReadyJavaScript("$('#" + this.getMarkupId() + "').button();");
        response.renderOnDomReadyJavaScript("$('#" + this.getMarkupId() + "').click(" +
            "function(){" +
                "var btn = $(this) \n" +
                "btn.button('loading')" +
            "})");
    }
}
button wicket twitter-bootstrap
1个回答
0
投票

我无法使用按钮解决问题,但找到了解决方法使用SubmitLink并覆盖这样的getTriggerJavaScript

@Override
protected String getTriggerJavaScript(){
    String script = super.getTriggerJavaScript();
    String loadingScript = "$(this).button('loading');";
    return loadingScript + script;
}
© www.soinside.com 2019 - 2024. All rights reserved.