অ্যাকশনলিঙ্ক এইচটিএমএলঅ্যাট্রিবিউটস


88

ওয়ার্কস

<a href="@Url.Action("edit", "markets", new { id = 1 })" 
            data-rel="dialog" data-transition="pop" data-icon="gear" class="ui-btn-right">Edit</a>

কাজ করে না - কেন?

@Html.ActionLink("Edit", "edit", "markets", new { id = 1 }, new {@class="ui-btn-right", data-icon="gear"})

দেখে মনে হচ্ছে আপনি এইচটিএমএলঅ্যাট্রিবিউটে ডেটা-আইকন = "গিয়ার" এর মতো কিছু পাস করতে পারবেন না?

পরামর্শ?

উত্তর:


204

সমস্যাটি হ'ল আপনার বেনামে অবজেক্ট সম্পত্তিটির data-iconএকটি অবৈধ নাম। সি # বৈশিষ্ট্যগুলির নামে ড্যাশ থাকতে পারে না। দুটি উপায় রয়েছে যা আপনি এটিকে পেতে পারেন:

ড্যাশের পরিবর্তে আন্ডারস্কোর ব্যবহার করুন (এমভিসি স্বয়ংক্রিয়ভাবে নির্গত এইচটিএমএলটিতে ড্যাশ দিয়ে আন্ডারস্কোরটি প্রতিস্থাপন করবে):

@Html.ActionLink("Edit", "edit", "markets",
      new { id = 1 },
      new {@class="ui-btn-right", data_icon="gear"})

অভিধানে লাগে এমন ওভারলোডটি ব্যবহার করুন:

@Html.ActionLink("Edit", "edit", "markets",
      new { id = 1 },
      new Dictionary<string, object> { { "class", "ui-btn-right" }, { "data-icon", "gear" } });

4
আন্ডারস্কোর Ajax.ActionLinkসাহায্যকারীদের সাথে কাজ করছে বলে মনে হচ্ছে না
দিমিত্রি এফিমেনকো

4
আন্ডারস্কোর ট্রিকটি সত্যিই অদ্ভুত শোনায়, আপনি যদি এইচটিএমএল বৈশিষ্ট্যে একটি আন্ডারস্কোর চান?
মিচিয়েল

4
@ মিচিয়েল রিয়ার্সগুলি আপনি অভিধানে নেওয়া ওভারলোডটি ব্যবহার করতে পারেন
মার্চাইন্ড

4
। নেট কোর ট্যাগ সহায়করা এই সমস্ত সমস্যা ধ্বংস করে - ভবিষ্যত থেকে হাই।
নিকো

26

একটি আন্ডারস্কোর দিয়ে পছন্দসই হাইফেন প্রতিস্থাপন করুন; এটি স্বয়ংক্রিয়ভাবে হাইফেন হিসাবে রেন্ডার হবে:

@Html.ActionLink("Edit", "edit", "markets",
    new { id = 1 },
    new {@class="ui-btn-right", data_icon="gear"})

হয়ে:

<form action="markets/Edit/1" class="ui-btn-right" data-icon="gear" .../>

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.