نظرات مطالب
ارتقاء به ASP.NET Core 1.0 - قسمت 14 - فعال سازی اعتبارسنجی ورودی‌های کاربران
یک نکته‌ی تکمیلی: جایگزینی bower با npm

bower یک فناوری منسوخ شده‌است و اگر بخواهیم bower.json ذکر شده‌ی در این مطلب را با package.json مربوط به npm جایگزین کنیم، به یک چنین محتوایی خواهیم رسید:
{
  "name": "testwebapp",
  "version": "1.0.0",
  "description": "",
  "scripts": {},
  "author": "",
  "license": "ISC",
  "dependencies": {
    "bootstrap": "^3.3.7",
    "jquery": "^2.2.4",
    "jquery-ajax-unobtrusive": "^3.2.4",
    "jquery-validation": "^1.17.0",
    "jquery-validation-unobtrusive": "^3.2.8"
  }
}
پس از ایجاد فایل package.json فوق، کافی است دستور npm install را در ریشه‌ی پروژه وارد کنید تا این بسته‌ها دریافت و نصب شوند.
سپس بر اساس مسیرهای پوشه‌ی node_modules جدید، فایل bundleconfig.json چنین محتوایی را پیدا می‌کند:
[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "node_modules/bootstrap/dist/css/bootstrap.min.css",
      "wwwroot/css/site.css"
    ]
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "node_modules/jquery/dist/jquery.min.js",
      "node_modules/jquery-validation/dist/jquery.validate.min.js",
      "node_modules/jquery-validation-unobtrusive/dist/jquery.validate.unobtrusive.min.js",
      "node_modules/jquery-ajax-unobtrusive/jquery.unobtrusive-ajax.min.js",
      "node_modules/bootstrap/dist/js/bootstrap.min.js",
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    },
    "sourceMap": false
  }
]
و در آخر فایل Layout.cshtml_ برنامه به این صورت ساده خواهد شد (فقط خروجی‌های نهایی css و js حاصل از BundlerMinifier در اینجا قید می‌شوند؛ که حاصل یکی کردن و فشرده سازی تمام آن‌ها است):
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>@ViewData["Title"] - DNTCommon.Web.Core.TestWebApp</title>
    <link href="~/css/site.min.css" rel="stylesheet" asp-append-version="true" />
</head>

<body>
    <div>
        @RenderBody()
    </div>

    <script src="~/js/site.min.js" type="text/javascript" asp-append-version="true"></script> 
    @RenderSection("Scripts", required: false)
</body>
</html>
البته با این شرط که تنظیمات ذیل در فایل csproj برنامه موجود باشند:
<Project Sdk="Microsoft.NET.Sdk.Web">
  <Target Name="PrecompileScript" BeforeTargets="BeforeBuild">
    <Exec Command="dotnet bundle" />
  </Target>
  <ItemGroup>
    <DotNetCliToolReference Include="BundlerMinifier.Core" Version="2.6.362" />
  </ItemGroup>
</Project>
نظرات مطالب
Ajax.BeginForm و ارسال فایل به سرور در ASP.NET MVC
این متد را به ابتدای فایل ajaxfileupload.js اضافه کنید (برای نگارش‌های جدیدتر jQuery):
jQuery.extend({
handleError: function( s, xhr, status, e ) {
    // If a local callback was specified, fire it
    if ( s.error ) {
        s.error.call( s.context || window, xhr, status, e );
    }
 
    // Fire the global callback
    if ( s.global ) {
        (s.context ? jQuery(s.context) : jQuery.event).trigger( "ajaxError", [xhr, s, e] );
    }
},
نظرات مطالب
ایجاد کپچایی (captcha) سریع و ساده در ASP.NET MVC 5
با تشکر از پست خوبتون
فقط مساله ای که برای من اتفاق افتاد این بود که زمانی که دکمه مربوط به بازسازی کپچا رو می‌زدم تصویر از کش خونده می‌شد و تصویر جدید نمایش داده نمی‌شد که برای حل این موضوع کافیست کد ایجکس برای آپدیت کپچا توسط دکمه refresh را به صورت زیر بنویسید:
jQuery('#refresh').on({
                'click': function () {
                    var random = new Date();
                    jQuery.ajax({
                        url: '@Url.Action("CaptchaImage","Captcha")',
                        type: "GET",
                        data: null,
                        success: function (result) {
                            jQuery("#imgcpatcha").attr("src", "/Captcha/CaptchaImage?" + random + result);
                        }
                    });
                }
                });
نظرات مطالب
آپلود فایل توسط فرم‌های پویای jqGrid
این متد را به ابتدای فایل ajaxfileupload.js اضافه کنید (برای نگارش‌های جدیدتر jQuery):
jQuery.extend({
handleError: function( s, xhr, status, e ) {
    // If a local callback was specified, fire it
    if ( s.error ) {
        s.error.call( s.context || window, xhr, status, e );
    }

    // Fire the global callback
    if ( s.global ) {
        (s.context ? jQuery(s.context) : jQuery.event).trigger( "ajaxError", [xhr, s, e] );
    }
},
نظرات مطالب
آغاز به کار با Twitter Bootstrap در ASP.NET MVC
چند سؤال اینجا هست که از راه دور قابل بررسی نیست:
- چطور تعاریف فایل‌ها رو در کدها اضافه کردید؟ (اگر خطای نبود jQuery رو بدون خطای کامپایل که ذکر شد گرفتید، یعنی اصلا jQuery تعریف نشده در تعریف bundle نهایی)
- ساختار پوشه‌های شما چیست؟ محل قرارگیری این فایل‌ها به چه ترتیبی است؟
- از چه نگارشی از اسکریپت‌ها و فایل‌ها استفاده می‌کنید؟ از کجا تهیه شده‌اند؟

ضمنا هیچ الزامی برای استفاده از minification در این مبحث نیست. فقط برای تکمیل بحث عنوان شده.
به علاوه در قسمت‌های بعدی این بحث، سورس هر قسمت پیوست شده که شامل فایل‌های اسکریپت و css متناظر با هر بحث می‌‌شود. این فایل‌ها در این سری ویژه، مورد تائید هستند و آزمایش شد‌ه‌اند.
نظرات مطالب
ASP.NET MVC #21
- مراجعه کنید به دوره «استفاده از افزونه‌ها و امکانات jQuery در ASP.NET MVC» برای تکمیل بحث. برای نمونه مطلب «افزونه‌ای برای کپسوله سازی نکات ارسال یک فرم ASP.NET MVC به سرور توسط jQuery Ajax» اطلاعات یک فرم رو به صورت خودکار توسط متد form.serialize به سرور ارسال می‌کند.
- نمی‌تونید از Ajax معمولی (یا به عبارتی XMLHttpRequest) برای ارسال فایل استفاده کنید. یا باید از سیلورلایت یا فلش استفاده کنید، یا از
مرورگرهایی که XMLHttpRequest Level 2 را پشتیبانی کنند (از IE 10 به بعد مثلا)، امکان Ajax upload توکار به همراه گزارش درصد آپلود را بدون نیاز به فلش یا سیلورلایت، دارند.یک نمونه پیاده سازی آن 
نظرات مطالب
طراحی گردش کاری با استفاده از State machines - قسمت اول
- بله. در قسمت بعد این مساله با معرفی یک کتابخانه مدیریت ماشین‌های حالت، دنبال خواهد شد.
- موارد دیگری مانند
raphaeljs ، draw.io (^) ، WireIt و jGraph  هم برای رسم گراف هستند.
- بله. باید کمی به jQuery Ajax آشنا باشید. می‌تونید اشیایی رو که قرار هست در صفحه ترسیم بشن به صورت آرایه‌ای از اشیاء جاوا اسکریپتی تعریف کنید. هر شیء دارای source و target است به علاوه مختصات x و y. نهایتا برای ارسال آن به سرور از طریق jQuery Ajax خواهید داشت:

JSON.stringify(whole_object)
برای دریافت لیست اشیاء هم به صورت JSON از سرور و رسم آن در سمت کلاینت با JSON.decode می‌تونید شروع کنید.
نظرات مطالب
JQuery 1.3 ارائه شد
سلام؛

این Jquery انقدر جالبه که من که برنامه نویس نیستم، علاقه مند شدم... اولین بار هم از طریق وبلاگ شما آشنا شدم. خیلی دوست دارم که در موردش بیشتر بدونم... خیلی زیاد تو سایت jquery.com گشتم و چیز های جالبی هم پیدا کردم. اگر امکانش باشه، می خواستم خواهش کنم یه سری مطالب با تمرکز بیشتر در این مورد بنویسید. مثلا این توصیه هاست روی گوگل جالب بود. حالا نمی دونم اگر روی هاست داخل ایران باشه، آیا سرعت لودشدنش در ایران بیشتر میشه یا گوگل؟! فعلا دارم دنبال پلاگین های جالب Jquery می گردم... خیلی متشکرم از مطالب خیلی جالبتون.
نظرات مطالب
ویدیوهای رایگان آموزش jQuery
برای تمام ویدیوها فوق mirror‌ تهیه کرده‌ام:
https://www.dntips.ir/2008/12/mirror.html

و mirror برای ویدیوهای جدید این مجموعه:
Day 14: Implementing Your First Plugin
http://rapidshare.com/files/181363327/v3bg115310.flv

Day 15: Building a jQuery Style-Switcher: Part 1
http://rapidshare.com/files/181363189/n62ldrzuyo.flv

Day 15: Building a jQuery Style-Switcher: Part 2
http://rapidshare.com/files/181363345/qkrwv8jzsf.flv
مطالب
30Days to Learn jQuery

چند وقت پیش سایت معروف  tutsplus.com یه دوره 30 روزه آموزش مبتدی تا حرفه ای jQuery رو به صورت رایگان برگزار کرد،در این دوره آقای Jeffrey Way (مدرس دوره) در 30 روزه jQuery رو از مبتدی تا حرفه ای و به صورت کاربردی آموزش میده، در کل مجموعه جالبه (البته خودم تا حالا وقت نشده شروع کنم برای شروع هم اگر وقت شد میخوام این مجموعه رو با کمک دوستان زیرنویس کنم اگر مایل به همکاری بودید به من ایمیل بزنید sir1afifi@gmail.com )پیشنهاد می‌کنم حتما دانلود کنید.