我正在使用MVC3
次HTML
次观看。
以下是我的观点:
@model mobilesurveys.mt.Models.Question
@{ ViewBag.Title = "Question"; }
<div data-role="header" data-theme="b">
<h1>@Model.SurveyName</h1>
</div>
@if (@Model.QuestionType == 7)
{
<div data-role="fieldcontain">
@using (Html.BeginForm("SaveDropDown", "GetQuestion", Model))
{
@Html.AntiForgeryToken()
<fieldset>
<label class="select">@Model.QuestionText</label><br />
<select name="selectedObjects" id="selectchoice1" data-native-menu="false">
<option value="-1">--Select--</option>
@foreach (var item in Model.Options)
{
if (@item.IsAnswer == true)
{
<option selected="selected" value="@item.OptionNumber">@item.OptionText</option>
}
else
{
<option value="@item.OptionNumber">@item.OptionText</option>
}
}
</select>
</fieldset>
<p><input type="submit" id="selectsubmit" value="Next" /></p>
}
</div>
}
@if (@Model.QuestionType == 1)
{
<div data-role="fieldcontain">
@using (Html.BeginForm("SaveRadio", "GetQuestion", Model))
{
@Html.AntiForgeryToken()
<fieldset data-role="controlgroup" id="radio_fieldset">
<label id="l1" for="select-choice-1" class="select">@Model.QuestionText</label><br />
@foreach (var item in Model.Options)
{
if (@item.IsAnswer == true)
{
<input type="radio" checked="checked" name="selectedObjects" id="@item.OptionText" value="@item.OptionNumber" onselect="next(@item.OptionNumber);" />
}
else
{
<input type="radio" name="selectedObjects" id="@item.OptionText" value="@item.OptionNumber" onselect="next(@item.OptionNumber);" />
}
<label for="@item.OptionText">@item.OptionText</label>
}
<br />
</fieldset>
<p><input type="submit" id="radio_submit" onclick="validate(this);" value="Next" /></p>
}
</div>
}
这是我的javascript:
<script type="text/javascript">
$(document).ready(function () {
// validation for select that can not leave empty.
$("#selectsubmit").click(function (e) {
var textContent = $("#selectchoice1").val();
textContent = jQuery.trim(textContent);
if (textContent == "-1") {
alert("please select the value");
$("#selectchoice1").focus();
return false;
}
});
$("#radiosubmit").click(function (e) {
alert('hi');
});
});
</script>
我正在重定向到控制器中具有不同ID的同一视图。
问题在于第一次加载文档时只执行javaScript。当我点击radiosubmit
按钮时,警报未触发。
如何在MVC3中处理?
答案 0 :(得分:2)
您将事件绑定到必须已在页面上的特定对象。你有两个选择:
尝试谷歌关于bind和live之间的差异(点击只是在特定事件上绑定的快捷方式,称为点击)