Отримати Button Value з jQuery в IE

257

Програмування Asp.net
Попередній

Наступний

Є простий html-код.

class=“my_button” name=“buttonName” value=“buttonValue”>
Button Label

Потрібно отримати атрибут value цієї кнопки. Перше що приходить в голову, ось такий код:

type=“text/javascript”>
$
(document).ready(function() {
$
(‘.my_button’).click(function() {
alert
($(this).val());
});
});

Але, як виявляється, він не працює в IE. Є кілька рішень цієї проблеми

Перша, це отримувати значення так:

alert($(this).attr(“value”));

Але цей код не працює в IE6, для нього доведеться писати, ось такі маневри

var label = $(this).text();
$
(this).text();
var buttonValue = $(this).val();
$
(this).text(label);

Але саме правильне рішення написати доопрацювання, для всього сайту

jQuery(function($) {

if($.browser.msie) {
jQuery.fn._orig_val = jQuery.fn.val

jQuery.fn.val = function(value) {
var elem = $(this);
var html
if(elem.attr(‘type’) == ‘button’) {

html
= elem.html()
elem
.html()
}
// Use original function
var result = elem._orig_val(value);
if(elem.attr(‘type’) == ‘button’) {
elem
.html(html)
}
return result;
}
}
})