gpt4 book ai didi

javascript - 验证名称为数组的输入元素

转载 作者:行者123 更新时间:2023-11-28 01:26:51 24 4
gpt4 key购买 nike

我有文本框和上传文件,如:

<input type="text" id = "contract_copy_text[]" name="contract_copy_text[]" value="" maxlength="50"/>
<input type="file" name="contract_copy_pdf[]" id="contract_copy_pdf[]" accept="application/pdf" />

我无法验证它。

我试过了:

var contract_copy_text = $('#contract_copy_text[]').val(); // document.getElementById('contract_copy_text').value;
var contract_copy_pdf = $('#contract_copy_pdf[]').val(); // document.getElementById('contract_copy_pdf').value;

if (contract_copy_text == "") {
alert("insert contract copy title for file");
$('#err_lbl_contract_copy_text').html('insert contract copy title for file');
return false;
}

if (contract_copy_pdf == "") {
alert("Please select contract copy pdf file for upload");
$('#err_lbl_contract_copy_pdf').html('Please select contract copy pdf file for upload');
return false;
}

但这行不通。

请注意:这些字段是根据需要(点击)动态生成的。谁能告诉我我犯了什么错误。

更新:

请参阅fiddle

最佳答案

问题在于您在此处编写 jQuery 选择器的方式:

var contract_copy_text = $('#contract_copy_text[]').val();
var contract_copy_pdf = $('#contract_copy_pdf[]').val();

您必须对 [] 字符进行转义(使用 \\),因为 they have special meaning inside the selector expression :

var contract_copy_text = $('#contract_copy_text\\[\\]').val();
var contract_copy_pdf = $('#contract_copy_pdf\\[\\]').val();

来源https://api.jquery.com/category/selectors/ :

To use any of the meta-characters ( such as !"#$%&'()*+,./:;<=>?@[]^`{|}~ ) as a literal part of a name, it must be escaped with with two backslashes: \.

关于javascript - 验证名称为数组的输入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31720542/

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