javascript - 将动态生成的值发送到 ajax 数据
问题描述
拥有这个
var cData={};
var arr=[];
datacolumns.split(",").forEach((element)=>{
arr.push({data:element.trim()})
cData[element] = `$(#${element.trim(0)}).val()`;
});
但是当我在 ajax Data:cData 中调用 cData 时,它会将表单发送为
authorid "$(#authorid).val()"
firstname "$(#firstname).val()"
lastname "$(#lastname).val()"
sorted "$(#sorted).val()"
这是怎么回事,我的线索为零
解决方案
我认为您错误地使用了反引号。如果element
是字符串,则不需要使用它们。
var cData={};
var arr=[];
datacolumns.split(",").forEach((element)=>{
var el = element.trim();
arr.push({ data: el });
cData[el] = $("#" + el).val();
});
所以当你通过循环时,你应该每次都得到一个新的选择器:
$("#authorid").val();
$("#firstname").val();
$("#lastname").val();
$("#sorted").val();
只要这些元素以正确的 ID 存在并具有value
属性,就应该可以填充您的对象。
推荐阅读
- php - Regex allow only datetime (h:m:s) or an integer
- android - 使用 Kotlin 检查 CheckBoxPreference 时如何启动函数?
- node.js - Download all linked mp3 files from a website using the terminal
- php - Laravel Nova:如何创建自定义字段及其 crud 方法?
- python - 函数绑定到 Tkinter 中的组合框
- python - 为什么 XPATH 的 find_element 在迭代日期选择器时会提供太多的 Web 元素?
- python - 实现“查找所有”算法,在表格中显示匹配的行,并在单击表格单元格时跳转到行
- python - 如何在python中调用输入的数据类型
- emacs - Magit:更改差异中文件名的颜色
- python - Python - 与进程一起使用时,共享内存的大小默认为默认大小