jQuery:
$(document).ready(function() {
$("a.change_status").click(function(){
var status_id = $("a").val();
alert(status_id);
return false;
});
});
HTML:
<a href="?status=5" class="change_status">Aminul</a><br/>
<a href="?status=25" class="change_status">Arif</a><br/>
<a href="?status=15" class="change_status">Sharif</a><br/>
私は欲しい status_id
そして、なぜか私のアンカータグは動的です。 idを使用したり、クラス名を動的にしたりできません。 $this
自分の値を取得します。
これは簡単です:
$(document).ready(function() {
$("a.change_status").click(function(){
var status_id = $(this).attr('href').split('=');
alert(status_id[1]);
return false;
});
});
var status_id= $(this).attr("href").match(/status=([0-9]+)/)[1];
ここには2つの別個の問題があります...最初にthis
を使用して実際にクリックされたリンクを見つけ、次にそのhref属性の値を見つける必要があります。
$(document).ready(function() {
$("a.change_status").click(function() {
var status_id = parseURL($(this).attr("href"));
alert(status_id);
return false;
});
});
また、JavaScriptにはURLパラメータをプルする方法がないため、変数「status」の値を検索する関数(例ではparseURL
)を記述する必要があります。
function parseURL(theLink) {
return decodeURI((RegExp('status=' + '(.+?)(&|$)').exec(theLink) || [, null])[1]);
}
次のjsfiddleを参照してください。
$('a').attr('href');
トリックを行う必要があります
$(document).ready(function() {
$("a.change_status").click(function(){
var status_id = $(this).attr("href");
alert(status_id); return false;
});
});
あなたはこれを次のように行うことができます:
$(document).ready(function() {
$("a.change_status").click(function() {
var status_id = $(this).attr("href");
alert(status_id);
return false;
});
});
$("a.change_status").click(function(){
var status_id = $(this).attr('href');
alert(status_id);
});