jQuery.AreYouSure 除了单选按钮外,插件无法正常工作
jQuery.AreYouSure Plugin not Working except for Radio Buttons
我正在使用 jQuery plugin:Are-You-Sure v1.9.0。我在 vbhtml 页面中遇到了一个奇怪的问题。
如果我更改单选按钮的值但不更改同一表单中的其他元素,则插件工作正常。
这是代码片段:
<form id="MultiSelectedSlidesSettings" name="MultiSelectedSlidesSettings" Class="col-md-10 col-lg-10 col-sm-12 " >
<input type="text" value="abc" id="temp" />
<input type="radio" name="MaxParticipantResponseType1" id="variable1" value="Variable" checked="checked" />
<label for="variable1">Variable</label>
<input type="button" class="btn btn-default " id="btnSubmitSlide" onclick="xxxx()" value="Save" />
</form>
JavaScript:
function SetMultiSlidesSelectedView() {
$("#MultiSelectedSlidesSettings").areYouSure({
message: 'It looks like you have been editing something. '
+ 'If you leave before saving, your changes will be lost.'
});
}
以上代码只是为了演示目的,实际上还有其他控件,例如复选框和单选按钮等
仅当我更改单选按钮状态时才会出现带有 'stay/leave' 消息的提示消息。如果我更改输入字段中的文本 and/or unchecked/check 复选框,它永远不会出现。
任何解决方案或解决方法将不胜感激
好的,我找到问题了。看起来插件需要 form 元素中的元素具有 name 属性。例如,在我上面的例子中,input.text 被赋予了 id 但没有设置 name。一旦我设置了名称属性,它就起作用了。
<input type="text" value="abc" id="temp" name="temp" />
我正在使用 jQuery plugin:Are-You-Sure v1.9.0。我在 vbhtml 页面中遇到了一个奇怪的问题。 如果我更改单选按钮的值但不更改同一表单中的其他元素,则插件工作正常。
这是代码片段:
<form id="MultiSelectedSlidesSettings" name="MultiSelectedSlidesSettings" Class="col-md-10 col-lg-10 col-sm-12 " >
<input type="text" value="abc" id="temp" />
<input type="radio" name="MaxParticipantResponseType1" id="variable1" value="Variable" checked="checked" />
<label for="variable1">Variable</label>
<input type="button" class="btn btn-default " id="btnSubmitSlide" onclick="xxxx()" value="Save" />
</form>
JavaScript:
function SetMultiSlidesSelectedView() {
$("#MultiSelectedSlidesSettings").areYouSure({
message: 'It looks like you have been editing something. '
+ 'If you leave before saving, your changes will be lost.'
});
}
以上代码只是为了演示目的,实际上还有其他控件,例如复选框和单选按钮等
仅当我更改单选按钮状态时才会出现带有 'stay/leave' 消息的提示消息。如果我更改输入字段中的文本 and/or unchecked/check 复选框,它永远不会出现。
任何解决方案或解决方法将不胜感激
好的,我找到问题了。看起来插件需要 form 元素中的元素具有 name 属性。例如,在我上面的例子中,input.text 被赋予了 id 但没有设置 name。一旦我设置了名称属性,它就起作用了。
<input type="text" value="abc" id="temp" name="temp" />