gpt4 book ai didi

javascript - 动态添加表单输入时在 Javascript 中使用 PHP 代码

转载 作者:行者123 更新时间:2023-12-01 02:36:45 25 4
gpt4 key购买 nike

我正在尝试制作一个表格来注册产品详细信息。每次用户单击“添加”按钮时,我都想添加更多输入字段,以便用户输入他们的产品。

代码如下所示。

<form id="myform">
<label>Product Name</label>
<input type="text" name="productname0" value=">
<?= !empty($data["error_productname0"]) ? "<p class=\"help is-danger\">". $data["error_productname0"] ."</p>": ""; ?>
</form>

<script>
$("button.add").click(function(){
let inputNumber = $("#myform").children("input").length;
$("#myform").append(returnNewInput(inputNumber));
});


function returnNewInput(n) {

return `<input type="text" name="productname${n}" value="">
<?= !empty($data["error_productname${n}"]) ? "<p class="help is-danger">$data["error_productname${n}"]</p>": ""; ?>`;

}
</script>

但是我在使用 inputNumber 变量时遇到了问题。我无法将其传递到 returnNewInput 函数中。错误提示,

Notice: Undefined variable: n

是否无法在Javascript代码中实现empty、isset等PHP代码?我认为 PHP 代码只是 Javascript 中的一大块字符串。

最佳答案

PHP 在服务器端执行。执行后,结果被发送到用户的Web浏览器。 PHP 绝对不会在用户的浏览器中运行,因此这样做根本行不通。

您面临的问题有两种解决方案:
1)你可以只使用JS来做你想做的事情。
2) 您可以向服务器发出 ajax 请求,让 PHP 渲染一些 HTML 供您使用,然后检索结果并使用 JS 插入它。

第一个解决方案显然更好,因为第二个解决方案要复杂得多,而且完成相同任务时效率低下。

试着这样记住:PHP 是用来设置网页或 ajax 请求结果的初始状态,而不是事后修改它。

关于javascript - 动态添加表单输入时在 Javascript 中使用 PHP 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47851345/

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