【发布时间】:2023-03-21 07:19:02
【问题描述】:
我可以在$.post JQuery/Ajax 代码中使用动态变量吗?我想知道我在哪里犯了错误或者我误解了JQuery的$.post的用法。
我有动态创建的变量和从 text-fields 分配给它的值。现在我想在 JQuery 的 $.post 中使用这些变量。
代码如下:
工作正常的部分:
var boxFields = ["customerId","customerName","customerContact","customerEmail"];
var boxVar = [];
for(var x=0;x<4;x++)
{
boxVar[x] = $("#" + boxFields[x]).val();
}
alert(boxVar[1]); //Just random call to check it works.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="text" id="customerId" value="12345"/>
<br>
<br>
<input type="text" id="customerName" value="John Doe"/>
<br>
<br>
<input type="text" id="customerContact" value="XXXXXXXXXX"/>
<br>
<br>
<input type="text" id="customerEmail" value="xxxxxx@xxx.com"/>
现在我已经动态生成了变量(check above hidden snippet for that)。所以使用$.post中的那些。
更新:
抱歉,遗漏了实际部分
我的问题/疑问:我可以使用 for 循环在 $.post 中创建动态对象吗?
完整代码:
var boxFields = ["customerId","customerName","customerContact","customerEmail"];
var boxVar = [];
for(var x=0;x<4;x++)
{
boxVar[x] = $("#" + boxFields[x]).val();
}
$.post("url.php",
{
requestType: "updateRow",
for(var y=0;y<4;y++)
{
boxFields[y]: boxVar[y]
if(y!=3){,}
}
/* I want above code to work like this:
requestType: "updateRow",
customerId: 12345,
customerName: John Doe,
customerContact: XXXXXXXXXX,
customerEmail: xxxxxx@xxx.com
*/
},
function(data)
{
//Success Code Lines..........
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="text" id="customerId" value="12345"/>
<br>
<br>
<input type="text" id="customerName" value="John Doe"/>
<br>
<br>
<input type="text" id="customerContact" value="XXXXXXXXXX"/>
<br>
<br>
<input type="text" id="customerEmail" value="xxxxxx@xxx.com"/>
也想知道如何防止SQL注入
谢谢!
【问题讨论】:
-
你有什么问题?什么不工作?您所说的只是您的代码“运行良好”。所以...你在问什么?至于 SQL 注入,无论您实际与 SQL 服务器进行交互,您都可以处理它。您在此代码中的任何地方都没有这样做。
-
很抱歉错过了实际问题。
标签: javascript php jquery html mysqli