繁体   English   中英

如何从C#foreach循环将当前元素ID传递到Document Ready jQuery中?

[英]How to pass current Element ID into Document Ready jquery from a C# foreach loop?

所以我有这个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传递到文档中,则无法完成任务。 如果它是链接中的onclick,则可以轻松实现,但不适用于我使用的小部件,因此,如何获取clicked元素的ID。
谢谢

您可以尝试以下方法:

$(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;
        }

    });
});

基本上,您这样做是为了获得点击的元素ID

onClick="reply_click(this.id);"

在这里你可以增强为

   if (yourConfirmMessageHere){
        var obj = $(this).attr('id');
        alert(obj);
        return false;
    }

好吧,我做到了。 我不确定这样做是否是最好的方法,但是它是否有效,这是我现在所关心的。 如果需要,我可以稍后再整理。 这就是我所做的。 首先,我为链接提供了一个名为“ myfunc”的onclick事件,该事件具有附件ID值。 然后我创建了一个返回值的函数,然后准备好在文档中调用该值,如下所示...

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);
        }
    });

});

就像我说的那样,它可能不是最好的方法,但它目前仍然有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM