禁用使用“@using(html.beginform())”JavaScript?
禁用JavaScript时发布此表单时出现问题。 当然,当我使用(html.beginform())删除禁用使用“@using(html.beginform())”JavaScript?,javascript,html,razor,asp.net-mvc-5,Javascript,Html,Razor,Asp.net Mvc 5,禁用JavaScript时发布此表单时出现问题。 当然,当我使用(html.beginform())删除@时,它解决了问题 @using (Html.BeginForm("AddTour", "AdminTour", FormMethod.Post, new { @class = "form-horizontal", role = "form" })) { <div class="row"> <div class="form-gro`enter code here`up
@时,它解决了问题
@using (Html.BeginForm("AddTour", "AdminTour", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
{
<div class="row">
<div class="form-gro`enter code here`up">
<form id="creation" name="creation" onchange="handleSelect()">
<div class="col-md-6">
@{
List<Airlines> AirlineId = ViewBag.AirlinesId;
}
<select id="Airline" name="Airline" disabled>
<option value="">- انتخاب کنید -</option>
@foreach (Airlines c in AirlineId)
{
<option value="@c.Id">@c.Name</option>
}
</select>
</div>
<div class="col-md-6 ">
<select id="TravelType" name="TravelType">
<option value="">- انتخاب کنید -</option>
<option value="A">1</option>
<option value="B">2</option>
<option value="C">3</option>
</select>
</div>
</form>
<script>
function handleSelect() {
if (document.getElementById('TravelType').value == 'A') {
document.getElementById('Airline').disabled = false;
} else {
document.getElementById('Airline').disabled = true;
}
}
</script>
</div>
</div>
}
@使用(Html.BeginForm(“AddTour”、“AdminTour”、FormMethod.Post、new{@class=“form horizontal”、role=“form”}))
{
@{
List AirlineId=ViewBag.AirlinesId;
}
- انتخاب کنید -
@foreach(AirlineId中的航空公司c)
{
@c、 名字
}
- انتخاب کنید -
1.
2.
3.
函数handleSelect(){
if(document.getElementById('TravelType')。值=='A'){
document.getElementById('Airline')。disabled=false;
}否则{
document.getElementById('Airline')。disabled=true;
}
}
}
在我看来,问题是
如何更改onchange=“handleSelect()”
或
以更改过滤器?您可以在
元素中使用Javascript而不会出现问题(假设启用了Javascript),并且对于使用Html.BeginForm()
生成的元素也是如此
如果您预期会有一个禁用JavaScript的环境,那么您可能会考虑在筛选元素更改并显示更新的版本(即禁用元素)来反映这些更改时显式执行一个POST。p>
您也可以考虑简单地不禁用元素,只处理验证服务器端(即在提交表单时确保用户有一个正确的/有效的组合,如果没有,显示验证错误)。当然,
<代码>当然,当我删除@使用时(html。它解决了这个问题。
您应该避免这样没有解释的陈述