مسلم هادی

asp.net MVC محتوای تکست باکس در همه تب ها تغییر میکند

من یه html helper نوشتم برای اینکه یه تکست باکس داشته باشم که کنارش یه دکمه باشه برای browse کردن فایل ها و انتخاب فایل.

مشکل اینه که وقتی صفحه رو باز میکنم تو چند تا تب، توی هر تبی که محتوای تکست باکس رو تغییر بدم، توی همه تب ها تغییر میکنه. حتی اگه مرورگر دیگه هم باز کنم، بازم با هم تغییر میکنند!!!!

دلیلش رو کسی میدونه؟؟

برای helper کدم به این صورته:

public static MvcHtmlString FileChooseFor<TModel, TProperty>(this HtmlHelper<TModel> html, Expression<Func<TModel, TProperty>> expression, string displayName,
string folder = "", string classes = "")
{
    TModel model = html.ViewData.Model;
    string name = ExpressionHelper.GetExpressionText(expression);
    var metadata = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
 
 
    var wrapper = new TagBuilder("div");
    wrapper.AddCssClass("input-group " + classes);
 
    var textbox = html.TextBox(name, metadata.Model as string, new
    { @class = "form-control ltr", autocomplete = "off", maxlength = 2000 });
              
    wrapper.InnerHtml = textbox.ToString();
 
    var btngroup = new TagBuilder("span");
    btngroup.AddCssClass("input-group-btn");
 
    var btn = new TagBuilder("span");
    btn.AddCssClass("btn btn-inverse OpenPopUp");
    btn.Attributes.Add("data-folder", folder);
    btn.Attributes.Add("data-element", name);
    btn.InnerHtml = displayName;
    btngroup.InnerHtml = btn.ToString(); ;
 
    wrapper.InnerHtml += btngroup.ToString();
 
    return new MvcHtmlString(wrapper.ToString());
}

که به این صورت استفاده میکنم:

@Html.FileChooseFor(model => model.PicUrl, "انتخاب تصویر", "software")

و به این تبدیل میشه:

<div class="input-group ">
    <input autocomplete="off" class="form-control ltr valid" data-val="true" data-val-length="حداکثر 150 کاراکتر" data-val-length-max="150" id="Pic" name="Pic" type="text" value="">
    <span class="input-group-btn">
        <span class="btn btn-inverse OpenPopUp" data-element="Pic" data-folder="software">انتخاب تصویر</span>
    </span>
</div>
لذت یادگیری با توسینسو
به عنوان شخصی که مدت هاست از سایت توسینسو استفاده می کنم باید بگم که واقعاً یکی از بهترین مرجع ها برای ارتقاء دانش شخصی هست. دوره های سایت، راهکارها و مطالب، همگی عالی هستند.
پاسخ شما
برای ارسال پاسخ خود وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....