gpt4 book ai didi

javascript - jQuery 和处理元素 ID

转载 作者:行者123 更新时间:2023-11-30 13:35:49 25 4
gpt4 key购买 nike

我有以下代码:

    function mandatoryField(manF)
{
var fieldId = $(manF).val();
if(fieldId == "")
{
return false;
}
else
{
return true;
}
}

它不起作用,但它确实有效:

    function mandatoryField()
{
var fieldId = $("#element_1").val();
if(fieldId == "")
{
return false;
}
else
{
return true;
}
}

假设,在我的第一个例子中, mandatoryField 是这样调用的:

  mandatoryField("#element_1")

为什么当我尝试用变量替换绝对元素 ID 名称时它不起作用?

编辑:

最近的代码 - 不工作:

    function isAmExSelected()
{
return $("#creditCardType").val() == "American Express";
}

function containsOnlyDigits(str)
{
return str.match(/[^0-9]/) == null;
}

function validateCCNumber()
{
var ccn = $("#creditCardNumber").val();
var onlyDigits = containsOnlyDigits(ccn);
if(isAmExSelected())
{
return ccn.length == 15 && onlyDigits;
}
else
{
return ccn.length == 16 && onlyDigits;
}
}

function mandatoryField(manF)
{
var fieldId = $("#" + manF).val();
return fieldId != "";
}


function registerValidation(id, validateMethod(), errorMethod)
{
$(id).change(function(){
if(validateMethod() == false)
{
errorMethod();
}
});
}


$(document).ready(function(){
registerValidation("#creditCardNumber", validateCCNumber, function(){alert("Invalid Credit Card Number!")});
$('input[type=text][class=mandatory]').blur(function(){
if (mandatoryField(this.id)) {
alert('Field:' + this.id + ' is mandatory!')
}
});
});

编辑2

我重写了整个内容,看起来像这样:

        $('input[type=text][class=mandatory]').blur(function(){
if (!($("#" + this.id).val().length)) {
alert('Field:' + this.id + ' is mandatory!');
}
});

如果强制类的文本输入模糊,则运行该函数:如果#foo.val() 没有长度(即其中没有文本),则运行警报。我相信它应该有效,但它没有。

最佳答案

将您的代码更新为:

function mandatoryField(manF)
{
var fieldId = $("#" + manF).val();
if(fieldId == "")
{
return false;
}
else
{
return true;
}
}

然后重试。

关于javascript - jQuery 和处理元素 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4895642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com