Javascript 如何使用Jquery识别在变量中单击的表单提交按钮

Javascript 如何使用Jquery识别在变量中单击的表单提交按钮,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,如何使用JQuery将提交按钮的id分配给变量 我有以下HTML: <form id="myForm"> <input id="oknovo" type="submit" value="OK & Novo" /> <input id="okfechar" type="submit" value="OK & Fechar" /> </form> 你可以看现场直播 我已经设法在的帮助下识别单击的按钮,但现在的问题是将其

如何使用JQuery将提交按钮的id分配给变量

我有以下HTML:

<form id="myForm">
    <input id="oknovo" type="submit" value="OK & Novo" />
    <input id="okfechar" type="submit" value="OK & Fechar" />
</form>
你可以看现场直播

我已经设法在的帮助下识别单击的按钮,但现在的问题是将其分配给

现在的问题是将其分配给一个全局变量

删除行
var botao
或将其从调用的函数中取出
onload
(通过左侧的JSFIDLE配置)

现在的问题是将其分配给一个全局变量


删除行
var botao
或将其从调用的函数中取出
onload
(通过左侧的JSFIDLE配置)。

小提琴上缺少括号。应改为:

var botao;
$(document).ready(function () {

    $("#myForm input[type=submit]").click(function (event) {
        botao = $(this).attr('id');
        alert("id é " + botao);
    });
});

你的小提琴缺少括号。应改为:

var botao;
$(document).ready(function () {

    $("#myForm input[type=submit]").click(function (event) {
        botao = $(this).attr('id');
        alert("id é " + botao);
    });
});

您的代码是正确的,只需在末尾添加右括号

$(document).ready(function () {
                 ^ unclosed

您的代码是正确的,只需在末尾添加右括号

$(document).ready(function () {
                 ^ unclosed

这个问题没有任何意义,因为除了语法错误,代码看起来像是在工作;另一方面,您可以使用隐藏字段来保留一些临时数据

<form id="myForm">
    <input id='myGlobalHidden' type='hidden'/>
    <input id="oknovo" type="button" value="OK & Novo" />
    <input id="okfechar" type="button" value="OK & Fechar" />
</form>


var botao;
$(document).ready(function () {

    $("#myForm input[type=button]").click(function (event) {
                botao = $(this).attr('id');
        //alert("id é " + botao);
        $("#myGlobalHidden").val(botao);
        // access here
        alert($("#myGlobalHidden").val());
    });
});

var botao;
$(文档).ready(函数(){
$(“#myForm输入[类型=按钮]”)。单击(函数(事件){
botao=$(this.attr('id');
//警报(“idé”+botao);
$(“#myGlobalHidden”).val(博陶);
//进入这里
警报($(“#myGlobalHidden”).val();
});
});

这个问题没有任何意义,因为除了语法错误,代码看起来工作正常;另一方面,您可以使用隐藏字段来保留一些临时数据

<form id="myForm">
    <input id='myGlobalHidden' type='hidden'/>
    <input id="oknovo" type="button" value="OK & Novo" />
    <input id="okfechar" type="button" value="OK & Fechar" />
</form>


var botao;
$(document).ready(function () {

    $("#myForm input[type=button]").click(function (event) {
                botao = $(this).attr('id');
        //alert("id é " + botao);
        $("#myGlobalHidden").val(botao);
        // access here
        alert($("#myGlobalHidden").val());
    });
});

var botao;
$(文档).ready(函数(){
$(“#myForm输入[类型=按钮]”)。单击(函数(事件){
botao=$(this.attr('id');
//警报(“idé”+botao);
$(“#myGlobalHidden”).val(博陶);
//进入这里
警报($(“#myGlobalHidden”).val();
});
});


那么问题出在哪里?为什么不使用提交方法?@RajeshDhiman-因为这样你就看不出哪个按钮被点击了。@Quentin先生,这是一个完美的捕获/使用“window.botao”怎么样?那么问题是什么?为什么不使用提交方法?@RajeshDhiman-因为这样你就看不出哪个按钮被点击了。@Quentin先生,这是个完美的捕获/使用“window.botao”怎么样?删除行var botao;没用。请看这里:@NunoNogueira我不明白真正的问题。@NunoNogueira-那里的错误是
ready
的调用中缺少code>。分配给全局的代码没有问题。@Pilot行警报(“idé”+botao);结果是error@NunoNogueira-不,它没有(唯一的错误在我的上一条评论中描述,我假设在形成问题时存在复制/粘贴问题,因为您说您成功获得了值)…这是在您将
botao
分配给全局之后发生的(您声称问题所在)无论如何,删除var botao行;没用。请看这里:@NunoNogueira我不明白真正的问题。@NunoNogueira-那里的错误是
ready
的调用中缺少code>。分配给全局的代码没有问题。@Pilot行警报(“idé”+botao);结果是error@NunoNogueira-不,它没有(唯一的错误在我的上一条评论中描述,我假设在形成问题时存在复制/粘贴问题,因为您说您成功获得了值)…这是在您将
botao
分配给全局之后发生的(您声称问题所在)无论如何,我假设在形成问题时这是一个复制/粘贴错误,因为文本上说“我已经设法识别单击的按钮”我假设在形成问题时这是一个复制/粘贴错误,因为文本上说“我已经设法识别单击的按钮”我假设在形成问题时这是一个复制/粘贴错误,因为文本确实会说“我已经成功识别了单击的按钮”@NunoNogueira如果这种情况发生得更频繁,那么最好在需要键入
)时,立即键入
,然后在其间移动插入符号。这样,你永远不会忘记任何:)@Thoronwen谢谢!问题是我已经习惯了Aptana IDE(它为我做到了这一点)。JSFIDLE不…。:-)我假设在形成问题时这是一个复制/粘贴错误,因为文本确实会说“我已经成功识别了单击的按钮”@NunoNogueira如果这种情况发生得更频繁,那么最好在需要键入
)时,立即键入
,然后在其间移动插入符号。这样,你永远不会忘记任何:)@Thoronwen谢谢!问题是我已经习惯了Aptana IDE(它为我做到了这一点)。JSFIDLE不…。:-)