插入额外的代码到使用jQuery

问题描述:

遇到麻烦试图正确地插入额外的代码到一个提交按钮的onclick属性一个提交按钮的onclick属性。我不想在onc​​lick中覆盖任何内容,但只需添加其他代码即可。我已经成功地插入了所需的代码,但是当我查看按钮的源代码时,它显示了一些不应该存在的附加功能,所以我认为我没有正确写出它。插入额外的代码到使用jQuery

这里的按钮:

<input id='TESTFrmSubmit' type='submit' value='Submit' name='submitButton' onclick='formSubmit(document.getElementById("TESTForm_1001")); return false;' /> 

额外的代码,我要插入到onclick属性是:

'_gaq.push(['_trackEvent', 'Whitepaper Campaign', 'Submit Button','conceptshareexample.pdf'']);' 

了jQuery我有一个插入其他代码到onclick属性是:

$(document).ready(function(){ 

    $("#TESTFrmSubmit").attr ("onclick", function() { 

return this.onclick + "'_gaq.push(['_trackEvent', 'Whitepaper Campaign', 'Submit Button','TESTexample.pdf'']);'"; 

    }); 

    }); 

时遇到的问题是,当我观看按钮的源代码,它包含的onclick内 功能的onclick(事件)显示它像这样:

onclick="function onclick(event){ formSubmit(document.getElementById("TESTForm_1010")); return false; }_gaq.push(['_trackEvent', 'Whitepaper Campaign', 'Submit Button','TESTexample.pdf'']);" 

我需要它像这样显示它没有功能的onclick(事件)

onclick="{formSubmit(document.getElementById("TESTForm_1010")); return false; }_gaq.push(['_trackEvent', 'Whitepaper Campaign', 'Submit Button','TESTexample.pdf'']);" 

请帮帮忙!这已经伤透了我的大脑......

+0

什么问题...代码格式的烂摊子? – elclanrs 2012-02-10 08:17:13

+0

请重新编辑的问题,插入代码格式化(选择并按下“代码示例”按钮),所以最好 – Khodor 2012-02-10 08:18:52

而不是设置.attr('onclick'的,可以绑定到直接的事件处理程序:

$('#mktFrmSubmit').click(function() 
{ 
    doSomething(); 
    alert('hi'); 
} 
$('#mktFrmSubmit').click(function() 
{ 
    alert('We can also bind to .click multiple times, and it adds events'); 
    // Instead of just overwriting them 
} 

现在点击#mktFrmSubmit将触发这两个单击处理。

+0

感谢大家能有所帮助!我认为这应该工作!再次感谢您的快速响应。 – user953221 2012-02-10 22:17:28

this.onclick 

被返回

function onclick(event) {... 

来完成你想要什么,用这个:

$(document).ready(function(){ 

$("#mktFrmSubmit").attr ("onclick", function() { 

_gaq.push(['_trackEvent', 'Whitepaper Campaign', 'Submit Button','conceptshareexample.pdf']); 
formSubmit(document.getElementById("TESTForm_1001")); return false; 

}); 

});