0

我正在尝试使用如下所述的 JQuery 验证引擎插件

http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/

使用 JQuery Mobile 控件。它适用于文本框,但是 QJM 下拉菜单没有显示验证气球。但是在提交表单时下拉菜单得到了验证,只有注册气球没有出现。

任何专家意见都将受到高度评价。

4

2 回答 2

0

只需放在 div 上。验证消息将在选择标签处突出显示。但这实际上是行不通的。我们不能再次取消验证。我要解决的问题是将第一个选项设置为选择一个......然后使用 jQuery 读取被选中的值并提醒插入正确的值。我使用 onClick 和 $('#yourselectioncontrolId").focus(); 你不必为此使用验证引擎插件。它不是完全为 jQueryMobile 设计的。你可以编辑他们的 CSS 以实现更好的 JQM。但它会是一个乏味的工作。反正我也在JQM项目上使用它。但在一定程度上,它有其自身的局限性。

$('#districtName').on('focus', function (e) {
    if ($('#malaysianState').val() == 'MY-00') {
        alert('Please select any state first');
        $('#malaysianState').focus();
    }

    e.preventDefault;
    return false;
});

我的 JQUERY 移动控制将是

<div data-role="fieldcontain">
                <label for="malaysianState" class="select">
                    <span lang="ms" id="stateName-label">Malaysian State</span>
                </label>
                <select name="malaysianState" id="malaysianState" data-native-menu="false">
                    <option value="NOT SELECTED" data-placeholder="true">Choose One...</option>
                    <option value="MY-01">Johor</option>
                    <option value="MY-02">Kedah</option>
                    <option value="MY-03">Kelantan</option>
                    <option value="MY-04">Melaka</option>
                    <option value="MY-05">Negeri Sembilan</option>
                    <option value="MY-07">Pulau Pinang</option>
                    <o
                    <option value="MY-16">WP Putrajaya</option>
                </select>
            </div>

             <div id="districtName-label" lang="ms">Select District </div>
                   <input id="districtName" class="validate[required] text-input" />
                   <input type="hidden" id="districtName-id" />
                <p></p>
<div>
于 2014-09-06T05:43:52.213 回答
0

我确实设法通过在 div 元素中包含选择菜单来显示气球,然后通过脚本显示验证提示。

<div id="validationPromptPropertyLevelDropDown" > 
            <select id="propertyLevelDropDown" data-bind="options: PropertyLevels,  value: PropertyLevelId ,  optionsText: 'PropertyLevelDescription', optionsValue: 'Id', optionsCaption: 'Choose one...'" name="propertyType" data-native-menu="false" ></select> 
        </div>

$('#validationPromptPropertyLevelDropDown').validationEngine('showPrompt', 'This field is required', 'fail');
于 2012-05-03T18:52:08.233 回答