首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >相同的按钮具有相同的效果- jquery

相同的按钮具有相同的效果- jquery
EN

Stack Overflow用户
提问于 2014-03-26 04:33:10
回答 1查看 74关注 0票数 0

我怎样才能给我的按钮同样的效果?因为他们都一样。但我想做的是,当我点击它们时,有一个“灵魂一样”的验证。

用php编写我的代码

代码语言:javascript
复制
echo "<form action='receipt.php?name=$name' method='post'>
        <input style='position:absolute; top:$this->yForBuy; left:$this->xForBuy; z-index:4;' type='button' id='btnSubmit' value='Purchase'/>
        <input type='hidden' name='bidder' value='$name'>
        <input type='hidden' name='item_no' value='$no'>
        <input type='hidden' name='item_name' value='$itname'>
        <input type='hidden' name='item_price' value='$bid'>
        </form>";

<label id='soul' style='position:absolute; z-index:5; color:black;'>purchased!</label>

,这是js中的代码

代码语言:javascript
复制
$(document).ready(function(){
 $("#soul").hide();

    $("#btnSubmit").click(function()
    {
        var position = $(this).position();
        var topTo = position.top-10;
        alert("position: "+position.top+"\n new position:"+topTo);
        $("#soul")
            .css({'top' : topTo , 'left' : position.left, 'display' : 'block'})
            .show();


    });




 });

如果您在这里使用OOP结构,这就是为什么我有多个具有相同功能的按钮。我在javascript部分挣扎,我不知道我如何做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2014-03-26 04:40:58

id属性在页面上应该是唯一的,并且不对每个按钮重复。JS不能处理#btnSubmit出现不止一次的事实。

如果代码是由php循环生成的,那么您可能需要实现ids的编号。#btnSubmit1#btnSubmit2等。

要么向按钮中添加类并将其用作公共选择器,要么尝试HTML5数据属性

代码语言:javascript
复制
echo "<form action='receipt.php?name=$name' method='post'>
        <input style='position:absolute; top:$this->yForBuy; left:$this->xForBuy; z-index:4;' type='button' class='purchaseButton' value='Purchase'/>
        <input type='hidden' name='bidder' value='$name'>
        <input type='hidden' name='item_no' value='$no'>
        <input type='hidden' name='item_name' value='$itname'>
        <input type='hidden' name='item_price' value='$bid'>
        </form>";

<label id='soul' style='position:absolute; z-index:5; color:black;'>purchased!</label>

然后:

代码语言:javascript
复制
$(document).ready(function(){
 $("#soul").hide();

    $(".purchaseButton").click(function()
    {
        var position = $(this).position();
        var topTo = position.top-10;
        alert("position: "+position.top+"\n new position:"+topTo);
        $("#soul")
            .css({'top' : topTo , 'left' : position.left, 'display' : 'block'})
            .show();
    });
 });

为了动画,包括表单的id属性(同样必须是唯一的) <form action='receipt.php?name=$name' id='FORMID' method='post'>

然后在js中:

代码语言:javascript
复制
$(document).ready(function(){
     $("#soul").hide();

        $(".purchaseButton").click(function()
        {
            var position = $(this).position();
            var topTo = position.top-10;
            alert("position: "+position.top+"\n new position:"+topTo);
            $("#soul")
                .css({'top' : topTo , 'left' : position.left, 'display' : 'block'})
                .show();
            $('#WHATEVER').animate({
               // whatever options here..
               complete: function() { 
               // this will run after the animation has finished
               $('#FORMID').submit(); // manually submit the form
               }
            });
        });
     });
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22651523

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档