Razor 動態產生JavaScript
將屬於兩個單位的專案進行拆解,有些資料需要透過Ajax去跟跨網路去取得相關資訊,只好在JavaScript中撰寫Razor。
<script>
$(document).ready(function () {
getSockNo();
});
function getSockNo() {
@foreach (var item in Model)
{
<text>
$.ajax({
url: 'http://localhost:8133/WeighAPI/getsockno?id=@(item.WeighinNo)',
data: {},
success: function (data) {
console.log(data);
var obj = JSON.parse(JSON.stringify(data));
setText('sockNo@(item.MachineID)', obj.SockNo);
},
error: function (xhr, ajaxOptions, thrownError) {
setText('sockNo@(item.MachineID)', '無法取得連線');
}
});
</text>
}
}
function setText(element, Text) {
document.getElementById(element).innerText = Text;
};
</script>
原本使用Html.Raw來進行輸出,但JavaScript還是報錯,
原來只要單純的使用<text></text>包起來就可以了。