当用户点击一个按钮时,我试图重新运行一段javascript。该网站是在CMS中创建的,所以我没有访问按钮来给它一个id。然而,在firebug中,我注意到它有这些值->
<input type="submit" value="Continue">
有没有什么方法可以通过使用'Continue‘的值来调用它呢?
仅供参考:按钮是用php编写的,我想重新运行以下代码
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script type="text/javascript">
$(window).load(function resizePole(){
var ht=($('#LayoutColumn2').height() > $('#LayoutColumn3').height()) ?
$('#LayoutColumn2').height() : $('#LayoutColumn3').height(); $('#lightPole').height(ht); }); </script>
我尝试使用以下命令来调用它:
onclick="return resizePole();"
哦,我对javascript几乎一无所知:)
链接到工作页面-您可能需要创建一个客户帐户。输入一些乱码,我可以稍后删除它
问题是什么:好的,让我来解释一下应该发生什么。我已经创建了一个名为' lightpole‘的div,这个div包含一个灯杆的背景图像,它是用javascript编码的,以便在页面加载时与'content’div的高度相匹配。在checkout_express页面上,内容管理系统的创建者创建了可展开和可折叠的div,指导用户完成结帐过程。在第三步“运输方法”中,用户点击“继续”按钮,展开“订单确认步骤”。这个div会导致' content‘div比初始加载时更长,但灯杆的大小只与内容的初始高度匹配,而不是订单确认步骤的附加高度,因此它导致灯杆比实际需要的要短。
发布于 2011-08-02 01:11:33
这将会起作用。
$('[type="submit"][value="Continue"]').click(function () {
{
return resizePole();
});
编辑
正如评论中所指出的,有一种更简洁的方法可以做到这一点。我通常出于习惯使用上面的方法(这样可以更容易地在单击事件中添加未来的逻辑)。
$('[type="submit"][value="Continue"]').click(resizePole);
编辑2个
要回答注释中的问题-是的,您也可以按div ID进行过滤。这将附加到id为DivIdHere、值为Continue的div中所有提交按钮的单击事件。
$('#DivIdHere [type="submit"][value="Continue"]').click(resizePole);
编辑3个
这有点脏,但在查看更新后的需求之后,这应该会起到作用。基本上,它会将单击事件添加到页面上的最后一个提交按钮,该按钮的值为continue (根据您提供的链接,它显示为发货部分)。
$('[type="submit"][value="Continue"]:last').click(resizePole);
https://stackoverflow.com/questions/6901917
复制相似问题