私のリンクのカスタム属性またはデータにアクセスする必要がありますが、アクセスできません。私のコードはリピーターでシンプルです。これが問題を引き起こしているかどうかはわかりません。ここでは、コードは次のようになります。ここではjqueryでカスタム属性にアクセス
<a class="showAllComm" data-userid='<%# DataBinder.Eval(Container.DataItem, "USER_ID")%>' href="#sa">Show all comments</a>
は私のクリックイベントは次のとおりです。
$('.showAllComm').click(function(index, element) {
var commId = $(element).data("userid");
})
commIdが定義されていないが、私はそれが1
どのようにすることができますの値を持っていることをソースコードでそれを見ることができます私はuserIdにアクセスできますか?
var commId = $(this).data("userid");
あなたが持っているだろうとしてイベントハンドラに渡される引数はindex
とelement
ではありません。
は
ありがとうしかし、私は要素にアクセスすることができない理由..ですか疑問を使用per the docs
、要素や属性を取りますか? – Pabuc
@Pabucコールバックに第2パラメータがないため、唯一のパラメータはjQueryイベントオブジェクトです。 – Alnitak
このような場合、jQueryオブジェクトを作成する必要はありません。より単純な '$ .data(this、" userid ")'はより効率的です...むしろ 'this [$。expando]'コール完全なjQuery()呼び出し/ initよりも優れています。 –