【发布时间】:2020-07-31 20:26:59
【问题描述】:
我正在用表单替换 div 的文本,以便用户可以使用它进行编辑,但我不知道如何将变量的内容从 jQuery 传递到 PHP,以便表单可以获取以前的文本和帖子的ID。
$(document).on('click', '.editar', function(e) {
var that = $(this);
//Post id
var box = that.closest('.comment-parent');
var link = box.find('.postId');
var postId = link.attr('name'); //This is the id
//Text
var parent = that.parent().parent();
var sibling = parent.siblings('.text');
var text = sibling.text(); //This is the text
sibling.replaceWith('<?php $edited_text = 'Text'; $edited_id = 0; echo '<form action="Includes/comment-edit.inc.php" method="post"><input type="hidden" name="postId" value="'.$edited_id.'"><textarea name="edited-text">'.$edited_text.'</textarea><br><button type="submit" name="edited-submit" style="float: right;">Update</button></form>'; ?>');
});
编辑:
我需要将 jQuery postId 和 text 变量传递给 PHP,因此 $edited_text 和 $edited_id 变量将具有相同的信息。我现在为这些 PHP 变量设置的值是临时的,因此页面在显示代码时不会调用错误。 :c
我不是试图将变量传递给不同的文件,而是传递给用 replaceWith(); 放置的表单内的“值”;在jQuery里面。
【问题讨论】:
-
AJAX 就是你要找的
-
我不清楚您到底要做什么,所以除非您使用 ajax 否则不,您不能将 jQuery 变量传递给 PHP。 PHP 是服务器端,jQuery 是客户端。
-
@B001ᛦ,我不确定如何。你能启发我吗?我对编程真的很陌生。我使用 AJAX 发布表单而不刷新页面,但仅此而已。我不知道如何使用它。
-
附带说明:通常如果您在 JS 中设置和使用基本变量,请不要在前面添加
$(如var simple = 123;。如果您将对象元素分配给变量,然后可以用前面的$命名变量,这样你就知道'那个变量实际上是一个对象'。它有助于在你的代码中明确JS变量的意图。不是必填,完全主观。
标签: php jquery forms variables