格式化JSON编码的数据和php以替换元素

格式化JSON编码的数据和php以替换元素,php,jquery,Php,Jquery,我不确定这篇文章的最佳标题,因此,如果没有正确描述我的问题,我深表歉意 我正在zen cart中进行一个项目,我想在AJAX过程完成后使用jQuery替换现有图像。 我使用以下代码行发送成功后的数据: echo json_encode(array('name'=>zen_db_prepare_input($_POST['categories_name'][$language_id]), 'sort_order'=>zen_db_prepa

我不确定这篇文章的最佳标题,因此,如果没有正确描述我的问题,我深表歉意

我正在zen cart中进行一个项目,我想在AJAX过程完成后使用jQuery替换现有图像。 我使用以下代码行发送成功后的数据:

echo json_encode(array('name'=>zen_db_prepare_input($_POST['categories_name'][$language_id]),
                       'sort_order'=>zen_db_prepare_input($_POST['sort_order']), 
                       'categories_image'=>zen_db_prepare_input($categories_image->filename), 
                       'asHtml' => '<div class="alert alert-info update-notice update-'.$_POST['categories_id'].'"><strong>Category info updated</strong></div>'));
因此,我需要用json编码数组返回的数据替换$categories->fields['categories\u image']和$categories->fields['categories\u name']

我试过了

elem.html(<?php echo zen_image(DIR_WS_CATALOG_IMAGES;?>obj.categories_image . obj.name<?php echo ", '100%', '')";?>).fadeIn('slow');

elem.html(尝试用以下内容替换elem.html行:

elem.html(“”.fadeIn('slow');
对于
$catrgories\u image
$name
,您可以从响应数据访问它们。 echo还将打印字符串类型的数据,因此您需要将其包装在“”中。
我希望我是有帮助的

它在控制台“uncaughtsyntaxerror:missing)after参数列表”中给了我一个错误,错误被标记在新代码的行上。但是我看不见失踪的人在哪里。在控制台中展开错误显示elem.html(“”).fadeIn('slow');我认为您需要更改此:
通过此
我认为
src
属性使用
用于图像路径。你能试试吗?这样可以清除错误500,但我注意到一个问题。使用“”并不完全符合zen_图像布局的zen cart约定,因此不使用该名称,这将抛出所有其他数据的定位。Zen Cart希望看到IMG、NAME、ALT、PARAMS,但我有$categories_image.$NAME、ALT、PARAMS,所以$NAME实际上被忽略了。我试着用逗号代替句号,但这给了我一个充满错误的控制台。从我在第三个和第四个参数中发现的是$width和$height,它们应该是int-type
zen\u-image(DIR\u-WS\u-CATALOG\u-IMAGES.$categories\u-image,$name,100)
以下是我的发现。使用elem.html(“”.fadeIn('slow');图像已正确更新,但会导致内容超出工具提示。使用elem.html(“”).fadeIn('slow');内容在工具提示内,但图像不会更新。是否将其包装在“”而不是“”中会导致它将$categories_image.$name作为php变量,而这将是空的,因为未设置?
elem.html(<?php echo zen_image(DIR_WS_CATALOG_IMAGES;?>obj.categories_image . obj.name<?php echo ", '100%', '')";?>).fadeIn('slow');