点击获取元素 ID 结果未定义的 jquery



我知道这会标记为重复..但是即使我问谷歌先生,我也已经尝试寻找其他帖子,但我完全困惑..我尝试在帖子中使用每个样本,但似乎不是所有的工作..

我正在尝试存档的是..当我单击按钮时,jquery将在警报弹出窗口中显示按钮ID。但我总是得到不确定的结果。

这是我的示例代码

.PHP

<button class="myButton" name="testResultByName" data-value="testResultByDataValue" id="testResultByID">Click</button>

JQUERY和我在关闭标签之前就把这段代码放在</body>,并且在关闭头</head>标签之前已经在右上角尝试了

<script type="text/javascript">
$('.myButton').click(function(event){
        var myButtonVar = $(this).prop('data-value');
        alert(myButtonVar);
        event.preventDefault();
});
</script>

我已经尝试使用

$(this).prop('id');
$(this).prop('name');
$('.myButton').attr('data-value');
$('.myButton').attr('id');
$('.myButton').attr('name');

什么都行不通.. 但是如果我像下面这样使用类,那就是工作...

$('.myButton').prop('class');

然后警报显示类名"myButton"似乎有效..我也已经在使用外部jquery文件..但是没有任何工作..已经使用了ready()但结果仍然相同..

错过了什么吗?哦,我用jquery-1.11.3.js

$.data而不是.prop,就像这样

$('.myButton').click(function(event){
    var myButtonVar = $(this).data('value');
    var buttonId = $(this).attr('id');
    console.log(myButtonVar);
    console.log(buttonId);
});

Example

你从 attr() 中获取值。

请参阅相同的示例代码

$(document).ready(function(){
    $('.myButton').click(function(event){
        
        var myButtonVar = $(this).attr('data-value');
        alert("data-value = "+myButtonVar);
        
        myButtonVar = $(this).attr('id');
        alert("id = "+myButtonVar);
        
        myButtonVar = $(this).attr('name');
        alert("name = "+myButtonVar);
        
        myButtonVar = $(this).attr('class');
        alert("class = "+myButtonVar);
        
        event.preventDefault();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button class="myButton" name="testResultByName" data-value="testResultByDataValue" id="testResultByID">Deposit</button>

试试这个:

$('.myButton').on('click', function(){
    var btnValue = $(this).attr('data-value');
    alert(btnValue);
    return false;
});

最新更新