【问题标题】:replace input button with jquery用jquery替换输入按钮
【发布时间】:2011-04-09 20:33:33
【问题描述】:

我正在尝试用 javascript 函数替换表单中的提交按钮。我可以插入以下 link_to_function 来提交表单:

  <%= link_to_function 'Create', "$('form').submit()" %>

现在,我想用 jquery 替换上面的 js 函数的默认表单提交按钮,以便在禁用 js 时有一个回退选项。现在的问题是:

如何替换普通提交 我的 application.js 文件中的按钮?

我试过了:

  $('input:submit').replaceWith("<%= escape_javascript(link_to_function 'Create', "$('form').submit()") %>");

这似乎不起作用:/

【问题讨论】:

  • @user700304 你的问题解决了吗?

标签: jquery ruby-on-rails link-to-function


【解决方案1】:

在我的应用程序中,我做了类似的事情 - 我有一个按钮,可以在任何当前表单上执行提交操作。

JQuery:

$('#save').click(function(){
    $('form').submit();
    return false;
});

【讨论】:

  • 是的,但是当js打开时如何用link_to_function替换input:submit按钮?我还想在关闭js的时候显示input:submit按钮。
  • 您可以让您的模板同时生成提交按钮和提交链接,并确保链接默认通过 CSS 隐藏。如果JS被激活,你可以使用JS隐藏按钮并在DOM加载时显示链接。
【解决方案2】:

我建议您保留提交按钮,然后向其中添加一个事件,然后阻止提交我假设您想在提交时进行 ajax 调用?

html

 <input type="submit" class="submit" />

jQuery

$('.submit').click(function(event){
     event.preventDefault();
    //do what you want here
 });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-21
    • 2012-07-30
    • 2019-01-24
    • 2011-08-31
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    相关资源
    最近更新 更多