在选择选项上放置警报
Placing an alert on select options
我有一个带有select和许多选项的表单。在选项中,根据您选择的选项,它将显示不同的形式。
我的查询是,如果用户开始填写表格,然后选择另一张表格,我需要在选择另一个选项时添加警报,如果他们同意,则清除他们已经开始填写的表格。
这可能吗?
$("select").change(function () {
$('div.box').hide();
$('div.box.'+$(this).val()).show();
});
<h2>SELECT YOUR TEST!</h2>
<select id=a>
<option value="chem">Chemical Analysis Testing Request Form</option>
<option value="fat">Fatigue Testing Request Form</option>
<option value="hard">Hardness Testing Request Form</option>
<option value="neutral">Neutral Salt Spray Testing Request Form</option>
<option value="stress">Stress Corrosion Testing Request Form</option>
<option value="tensile">Tensile Testing Request Form</option>
</select>
<!-- Test One -->
<div class="chem box">
<h2>Chemical Analysis Testing Request Form</h2>
<label>Accreditation / Approval required:</label><br>
<input type="checkbox" value="ISO17025/UKAS">ISO17025/UKAS<br>
<input type="checkbox" value="Nacap">Nacap <br>
<input type="checkbox" value="other">Other
<br>
<br>
<br>
<label>Material / Allow type:</label>
<input type="text">
<br>
<br>
<br>
<label>Can a Drawing be Supplied:</label><br>
Yes<input type="radio" onclick="yesnoCheck();" name="yesno" id="yesCheck">
No<input type="radio" onclick="yesnoCheck();" name="yesno" id="noCheck">
<br>
<div id="ifYes" style="display:none">
Image upload: <input type='file' id='yes' name='yes'><br>
</div>
<div id="ifNo" style="display:none">
If no can you sepcify form and dimensions:<br>
<textarea type='text' id='other3' name='other3'></textarea><br>
</div>
这里有一个演示:演示小提琴
试试这个:示例和示例在这里有明确的形式
var isFormChanged = false;
$("select").change(function () {
var type = $(this).val();
if(isFormChanged)
{
var sure= confirm ('Your changes will be lost, proceed?');
if(sure)
{
$('div.box.active').find('input[type=text]').val('');
$('div.box.active').find('input[type=radio],[type=checkbox]').prop('checked',false);
showForm(type);
}else
{
return false;
}
}
showForm(type);
});
function showForm(type)
{
$('div.box').removeClass('active').hide();
$('div.box.'+type).show().addClass('active');
isFormChanged = false;
}
$('div.box').find('input').on('change',function(){
isFormChanged = true;
});
您可以使用确认框:
if ( confirm("Do you want to clear the form") ) {
// process logic for hiding and showing new forms
}
更新的Fiddle
如果你不想使用内置的确认,那么你要么需要设计自己的弹出窗口,要么使用类似jQuery UI对话框的东西。
相关文章:
- CKeditor:更改对话框中的默认选择选项
- 如何在从多选下拉列表中选择选项值时动态生成文本框
- AngularJs列表ng单击以选择选项转换
- 使用基于文本的 Jquery 选择选项
- 当选择值x时,Javascript需要在正确的位置显示文本区域,从而循环通过具有选择选项的表单
- 在php和mysql中选择选项.一旦选择了选项,就列出我的sql数据库数据
- 选择选项时如何显示警报
- 使用php动态更改选择选项
- 选择“选择选项”时显示文本.怎么做
- LEAFLET地图和带有选择选项的标记-ANGULARjs
- 使用js将动态内容添加到选择选项列表中
- 用于使用javascript循环选择选项
- AngularJS-选择选项并在函数中使用它
- 禁用/启用基于单选/选择选项所选Javascript的文本框
- 如何使用jQuery隐藏与选择选项相关的选择选项列表
- 选择选项是添加或删除事件
- 使用jQuery向“选择选项”添加默认属性
- 构建HTML选择字段并使用JavaScript数组选择选项
- 带有动态选择选项的Firefox html5验证异常
- 只有当Angular从资源对象检索数据时,才选择选项元素