Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery而不是第一个单词在引导模式中显示完整字符串_Javascript_Php_Jquery_Bootstrap Modal - Fatal编程技术网

Javascript 使用jquery而不是第一个单词在引导模式中显示完整字符串

Javascript 使用jquery而不是第一个单词在引导模式中显示完整字符串,javascript,php,jquery,bootstrap-modal,Javascript,Php,Jquery,Bootstrap Modal,我使用php从数据库中获取一个名称,当我单击一个按钮时使用jquery,我想在引导模式框中将该名称显示为html。问题是名称有空格,我只能显示第一个单词例如,“我的名字”显示“我的”而不是“我的名字” 我的代码: 使用php创建的html元素,该元素保存名称并切换模式: <div class = 'card__footer'> <h3> ".$partner["storeName"]." </h3> <

我使用php从数据库中获取一个名称,当我单击一个按钮时使用jquery,我想在引导模式框中将该名称显示为html。问题是名称有空格,我只能显示第一个单词<代码>例如,“我的名字”显示“我的”而不是“我的名字”

我的代码:

使用php创建的html元素,该元素保存名称并切换模式:

 <div class = 'card__footer'>
   <h3> ".$partner["storeName"]." </h3>
   <a data-toggle = 'modal'  data-val = ".$partner["storeName"]." data-target='#partnerModal' >  
    <button type = 'button'>View Reviews </button>
   </a>
</div>

可以使用修剪功能从值的起点和终点删除空格。此函数在PHP和JavaScript中都可用

PHP

$str = "my name ";
echo trim($str,"my name "); // returns "my name" without quotes.
JavaScript

var str = "my name ";
echo str.trim(); // returns "my name" without quotes.

根据需要使用这些代码。它们只能帮助您获取名字。

这不是AJAX的问题,而是您的来源。如果您通过控制台在浏览器中检查渲染源(例如),您将看到数据val缺少双引号;正确的语法是
data val=“something”

因此,您的源代码看起来像
data val=my name
。。。所以名称将被解释为另一个属性。为了避免这种情况,只需使用正确的语法设置属性

就你而言:

<div class="card__footer">
   <h3>' . $partner['storeName'] . '</h3>
   <a data-toggle="modal2" data-val="' . $partner['storeName'] . '" data-target="#partnerModal">  
    <button type="button">View Reviews</button>
   </a>
</div>

' . $合作伙伴['storeName']。'
查看评论

我不想只取名字,我要完整的单词和空格,然后显示你的PHP代码。我确实知道,我的html元素是从数据库中用PHP创建的。这不起作用,因为我使用PHP创建了这个元素,并且使用单引号“”,现在的问题是您的PHP代码:您必须以正确的方式屏蔽使用过的引号。如果您像上面那样使用字符串连接,请将其设置为单引号-保留双引号,在内部用反斜杠屏蔽单引号,并将字符串返回到AJAX答案中。
<div class="card__footer">
   <h3>' . $partner['storeName'] . '</h3>
   <a data-toggle="modal2" data-val="' . $partner['storeName'] . '" data-target="#partnerModal">  
    <button type="button">View Reviews</button>
   </a>
</div>