aspnetcore/samples/MvcSample.Web/Views/JsonPatch/Index.cshtml

143 lines
4.8 KiB
Plaintext

<head>
<script src="//ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.0.min.js"></script>
<script>
$(function () {
var currentObj = {
"Name": "John",
"Orders": [{"OrderName": "Order1"},
{"OrderName": "Order2"}]
};
$('#currentLabel').text(JSON.stringify(currentObj))
$('#addOrder').on("click", function () {
var obj = [{
"op": "Add",
"path": "Customer/Orders/2",
"value": { "OrderName": "Name3" }
}]
$.ajax({
url: 'jsonpatch',
type: 'PATCH',
data: JSON.stringify(obj),
dataType: 'json',
contentType: 'application/json-patch+json',
success: function (data) {
$('#addLabel').text(JSON.stringify(data))
}
});
});
$('#invalidAddOrder').on("click", function () {
var obj = [{
"op": "Add",
"path": "Customer/Orders/5",
"value": { "OrderName": "Name5" }
}]
$.ajax({
url: 'jsonpatch',
type: 'PATCH',
data: JSON.stringify(obj),
dataType: 'json',
contentType: 'application/json-patch+json',
success: function (data) {
$('#invalidAddLabel').text(data)
},
error: function (request, status, error) {
$('#invalidAddLabel').text(error)
}
});
});
$('#removeOrder').on("click", function () {
var obj = [{
"op": "Remove",
"path": "Customer/Name"
}]
$.ajax({
url: 'jsonpatch',
type: 'PATCH',
data: JSON.stringify(obj),
dataType: 'json',
contentType: 'application/json-patch+json',
success: function (data) {
$('#removeLabel').text(JSON.stringify(data))
}
});
});
$('#moveOrder').on("click", function () {
var obj = [{
"op": "Move",
"from": "Customer/Orders/0",
"path": "Customer/Orders/1"
}]
$.ajax({
url: 'jsonpatch',
type: 'PATCH',
data: JSON.stringify(obj),
dataType: 'json',
contentType: 'application/json-patch+json',
success: function (data) {
$('#moveLabel').text(JSON.stringify(data))
}
});
});
$('#replaceOrder').on("click", function () {
var obj = [{
"op": "Replace",
"path": "Customer/Name",
"value": "ReplacedName"
}]
$.ajax({
url: 'jsonpatch',
type: 'PATCH',
data: JSON.stringify(obj),
dataType: 'json',
contentType: 'application/json-patch+json',
success: function (data) {
$('#replaceLabel').text(JSON.stringify(data))
}
});
});
});
</script>
</head>
<body>
<div>
<label>Current Customer</label>
<br />
<label id="currentLabel" name="currentLabel"></label>
<br />
</div>
<div>
<button id="addOrder" type="submit" class="btn btn-primary"> Add </button>
<br />
<label id="addLabel" name="addLabel"></label>
<br />
</div>
<div>
<button id="invalidAddOrder" type="submit" class="btn btn-primary"> Invalid Add </button>
<br />
<label id="invalidAddLabel" name="invalidAddLabel"></label>
<br />
</div>
<div>
<button id="removeOrder" type="submit" class="btn btn-primary"> Remove </button>
<br />
<label id="removeLabel" name="removeLabel"></label>
</div>
<div>
<button id="moveOrder" type="submit" class="btn btn-primary"> Move </button>
<br />
<label id="moveLabel" name="moveLabel"></label>
<br />
</div>
<div>
<button id="replaceOrder" type="submit" class="btn btn-primary"> Replace </button>
<br />
<label id="replaceLabel" name="replaceLabel"></label>
</div>
</body>