javascript - 如何通过 Javascript 访问 php 代码中的输入名称?
问题描述
我有一个带有一些行的 PHP 表单。这些行的字段如下所示:
<input type="text" name="addresses[n][0]" value="mail " id="address" class="validate">
我在 Javascript 中有以下代码来添加和删除行:
$(document).ready(function () {
$('select').material_select();
});
$(function ()
{
$(document).on('click', '.btn-add', function (e)
{
e.preventDefault();
var controlForm = $('.controls form:first'),
currentEntry = $(this).parents('.entry:first'),
newEntry = $(currentEntry.clone()).appendTo(controlForm);
newEntry.find('input').val('');
}).on('click', '.btn-remove', function (e)
{
$(this).parents('.entry:first').remove();
e.preventDefault();
return false;
});
});
我的问题是,在 POST 中发送带有添加行的表单后,添加的行具有相同的“n”索引,因为它们是克隆的。如何在 newEntry 变量中访问它们的“名称”属性,该变量是整行的 div?
我尝试过类似的事情
newEntry.find('name').val('addressesNewName')
newEntry.find('input').getAttribute('name') = 'addressesNewName'
newEntry.find('name').setAttribute("name","addressesNewName");
newEntry.find('input').find('name').val('addressesNewName');
newEntry.find('input').attr('name') = 'newaddresses';
newEntry.find('input').attr('name').val('newaddresses');
但没有任何改变该领域的名称。
我不需要帮助分配什么 n 值等等,只需要如何更改输入字段的名称。
解决方案
你有没有尝试过?
newEntry.attr('name', 'addressesNewName');
由于您使用的是 jQuery,因此可以通过以下方式轻松访问节点属性:
$(node).attr('attributeName'); // get attribute value
$(node).attr('attributeName', 'newValue'); // set attribute value
推荐阅读
- algorithm - 试图制作一种算法来组织扑克债务结算的直接付款
- javascript - 计算器和 javascript 的结果不同?哪一个是正确的?
- python - 使用 conjure-up 设置旋转 Kubernetes 时的问题
- r - GetCloseMatches R 函数在字符串匹配的少数情况下返回 list()。任何想法?
- git - 将 git 分支命名为 feature/featureName 或 username/featureName 而不是创建子分支
- julia - 为什么有“clamp”、“clamp.”和“clamp!” 在朱莉娅?
- java - 测试的 Gradle 依赖项与编译的不同
- javascript - 在方法链中修改它时,是否有任何方法可以访问当前处理的值而无需承诺或类?
- c# - 如何生成可能导致站点崩溃的异常以对其进行测试
- javascript - 如何从数据库中以模态输出特定信息