حرفه ای: نحوه اعمال ولیدیشن، درج به کمک jquery.ajax و web api

ساخت وبلاگ

سلام، من به کمک لینک زیر
http://keyurraval.com/Blog/JQuery-AJ...Web-API-Part-I
درج به صورت jquery.ajax و با کمک web api رو انجام دادم
ولی حالا مشکلم اینه که ولیدیشن رو چطور باید انجام بدم
در حالت معمولی input ها داخل form قرار داشتن و برای ولیدیشن از

@Html.ValidationMessageFor

استفاده می کردیم ولی در حال حاضر input ها داخل فرم قرار ندارند (طبق آموزشی که لینکش رو در بالا گذاشتم)
من این دو خط رو در Web.config دارم
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />

و همچنین این صفحه ای هست که input ها در اون قرار دارن

@{
Layout = null;
}

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>

<style type="text/css">
label {
width: 65px;
display: inline-block;
}

#wait {
position: absolute;
}
</style>

<script src="~/js/jquery-1.9.1.min.js"></script>

<script src="~/Scripts/jquery.validate.min.js"></script>

<script type="text/javascript">
function Addad() {
var ad = {
AdGroupID: $('#AdGroupID').val(),
AdTitle: $('#AdTitle').val(),
AdDescription: $('#AdDescription').val()

};
debugger;
$.ajax({
url: 'api/AdsAPI',
beforeSend: function () { $("#wait").css("display", "block"); },
//complete: function () { $("#wait").css("display", "none"); },
type: 'POST',
data: JSON.stringify(ad),
contentType: "application/json;charset=utf-8",
success: function (data) {
//alert('Ad added Successfully');
//GetAllStudents();
$("#wait").css("display", "none");
alert('Ad added Successfully');
},
error: function () {
alert('Ad was not Added');
}
});
}

</script>

</head>
<body>
<div>

<h2>Add New Ad</h2>

<label>AdGroupID : </label>
<input type="text" id="AdGroupID" />
<br />

<label>AdTitle : </label>
<input type="text" id="AdTitle" />
<br />

<label>AdDescription : </label>
<input type="text" id="AdDescription" />
<br />

<input id="btnAddAd" name="btnAddAd"
type="button" value="Add Ad"
onclick="Addad()" />

</div>
<div id="wait" style="display:none;width:69px;height:89px;border: 1px solid black;position:absolute;top:50%;left:50%;padding:2 px;"><img src='ajax-loader.gif' width="64" height="64" /><br>Loading..</div>
</body>
</html>


این هم model هست
public class Ad {
[Key]
public int AdID { get; set; }
public int AdGroupID { get; set; }
[Display(Name = "عنوان آگهی")]

[Required]
public string AdTitle { get; set; }
[Display(Name = "توضیحات آگهی")]


و همونطور که می بینی صفت required رو به عنوان آگهی اختصاص دادم
وقتی عنوان رو وارد می کنم که درج با موفقیت انجام میشه ولی وقتی عنوان رو وارد نمی کنم درج ناموفق هست یعنی اون آلرت Ad was not Added نمایش داده میشه ولی ولیدیشنی نمایش داده نمیشه مشکل کجاست؟
آیا باید به اینپوت ها کدی اضافه کنم؟

برنامه نویس...
ما را در سایت برنامه نویس دنبال می کنید

برچسب : نویسنده : محمد رضا جوادیان programers بازدید : 124 تاريخ : پنجشنبه 20 خرداد 1395 ساعت: 4:42