0

だから私はこのforeachループを持っています...

@foreach (Attachment attachment in Model)
{
<tr class="row@(index%2 == 0 ? "" : " even")">
        <td>
            @Html.ActionLink(attachment.AttachedFilename, "ViewAttachment", "Auction", new {docID = attachment.AttachmentId}, new {target = "_blank"})
        </td>
        <td>
                <a id="@attachment.AttachmentId" class="publishAttachment" name="public" style="float: right" tabindex="7">
                <img src="@Url.Content("~/Content/Images/cross_circle.png")" />
           </a>
       </td>
 </tr>
 index++;
 }

そして、私はこのjqueryを持っています...

$(document).ready(function () {
    $('.publishAttachment').click().confirmationDialog({ message: "Are you sure you want to cancel ?", okButton: "I am sure", cancelButton: "No, I don't want to do this",
        onSuccess: function () {
            var obj = $(this).attr('id');
            alert(obj);
            return false;
        }
    });
});

したがって、基本的にリンクをクリックすると、ポップアップ ダイアログが表示され、メッセージと [はい] または [いいえ] ボタンが表示されます。ただし、ID をドキュメントに渡す準備ができていないと、タスクを完了できません。リンク内のオンクリックであれば簡単に実行できますが、使用しているウィジェットでは機能しないため、クリックされた要素の ID を取得するにはどうすればよいですか。
ありがとう
ベン

4

3 に答える 3

0

基本的に、クリックされた要素IDを取得するためにこれを行います

onClick="reply_click(this.id);"

ここで次のように強化できます

   if (yourConfirmMessageHere){
        var obj = $(this).attr('id');
        alert(obj);
        return false;
    }
于 2012-11-22T10:23:14.887 に答える
0

わかりました。それが最善の方法かどうかはわかりませんが、今私が気にかけているのはうまくいくことだけです. 必要があれば後日整理します。これが私がしたことです。最初に、添付ファイル ID 値を持つ「myfunc」という onclick イベントをリンクに与えました。次に、値を返す関数を作成し、次のように、準備が整ったドキュメント内でその値を呼び出します...

function myfunc(value){
    theGlobalName = value;
}
$(document).ready(function () {
    $('.publishAttachment').confirmationDialog({ message: "Are you sure you want to cancel ?", okButton: "I am sure", cancelButton: "No, I don't want to do this",
        onSuccess: function () {
            var obj = theGlobalName;
            alert (obj);
        }
    });

});

私が言ったように、それはおそらく最善の方法ではありませんが、今のところうまくいきます.

于 2012-11-22T11:09:57.763 に答える
0

次のことを試すことができます。

$(document).ready(function () {
    $('.publishAttachment').click(function(){
        var answer = confirm("Are you sure you want to cancel ?")
        if (answer){
            var obj = $(this).attr('id');
            alert(obj);
            return false;
        }

    });
});
于 2012-11-22T10:22:29.327 に答える