我有一个单选按钮,如下所示:
<input type="button" value="Select address" onclick="selectAddress(@item.Id)" />
然后,以下javascript:
<script>
$(function () {
function selectAddress(selectedId) {
if ($('#TermsAccepted').is(':checked')) {
setLocation('@Url.RouteUrl("SelectCustomerAddress", new { addressId = selectedId})')
}
else {
$('#checkErrorMsg').toggle();
}
}
})
</script>
问题在于该代码具有语法错误,因为由于混合了剃刀和javascript,不知道selectedId。有办法解决这个问题吗?
最佳答案
您需要使用javascript而非Razor创建URL:
<script>
$(function () {
function selectAddress(selectedId) {
if ($('#TermsAccepted').is(':checked')) {
setLocation(
'@Url.RouteUrl("SelectCustomerAddress")?addressId='+selectedId);
}
else {
$('#checkErrorMsg').toggle();
}
}
})
</script>