2015-06-15 3 views
1

Я знаю, что это будет выглядеть как дубликат .. но я уже пытаюсь найти другое сообщение, даже я спрашиваю мистера Google, но я полностью запутался .. Я пытаюсь использовать каждый образец на почте, но кажется, что не все работают ..Onclick get element id result undefined jquery

Что я пытаюсь архивировать ... когда я нажимаю кнопку jquery, будет отображаться идентификатор кнопки во всплывающем окне предупреждения. Но я всегда получал результат неопределенным.

Вот мой пример кода

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

ответ

2

Вы $.data вместо .prop, как так

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

    console.log(myButtonVar); 
    console.log(buttonId); 
}); 

Example

0

Вы получаете значение из 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>

+0

неопределенными на меня .. –

+0

вы можете поделиться полный код –

+0

Мы проверили он в местной системе работает нормально. Поэтому, пожалуйста, проверьте и проверьте –

0

Попробуйте это:

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

. Нужно ли это редактировать? : 3 –