Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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 UI对话框,然后动态响应对话框中的单击_Javascript_Php_Jquery_Html - Fatal编程技术网

Javascript 打开包含动态内容的jQuery UI对话框,然后动态响应对话框中的单击

Javascript 打开包含动态内容的jQuery UI对话框,然后动态响应对话框中的单击,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我想用getData.php文件中的动态内容填充jQuery对话框。到目前为止,通过以下途径,这一做法效果良好: $("#buttonGetData").click(function() { $.get("getData.php", function(data){ $("#dialog").html(data); $("#dialog").dialog(); return false; }); }); getData.php只会返回如下内容: &l

我想用getData.php文件中的动态内容填充jQuery对话框。到目前为止,通过以下途径,这一做法效果良好:

$("#buttonGetData").click(function() {

  $.get("getData.php", function(data){
      $("#dialog").html(data);
      $("#dialog").dialog();
      return false;
  });
});
getData.php只会返回如下内容:

<p id="data1" class="data">data1</p>
<p id="data2" class="data">data2</p>
<p id="data3" class="data">data3</p>
数据1

数据2

数据3

我现在的问题是:如何向每个数据行添加动态单击侦听器,以便在我的站点中使用单击的数据?我希望每个“p”都可以点击,然后使用其中的数据将其内容设置为“textarea”

问题似乎是,新动态添加的行不是来自站点的JS的一部分,因此我无法通过clickListener访问它们


如何正确地做到这一点?谢谢大家!

当您像使用$(get)一样使用Ajax获得与html相关的数据结果时,从Ajax新生成的html不能用于jQuery代码,或者换句话说,jQuery/JS无法识别从Ajax生成的新添加的html元素。有一种方法可以让你达到你想要的结果。您可以将带有html代码的jQuery/JS代码作为字符串从文件(getData.php)发送到Ajax

echo '<p id="data1" class="data">data1</p>';
echo '<script>';
echo "$(document).on('click', '#data1', function(){alert('DATA1 Clicked');});"
echo '</script>';
die();

其中一个应该能够解决这个问题。

当您像使用$(get)一样使用Ajax获得与html相关的数据结果时,从Ajax新生成的html不能用于jQuery代码,或者换句话说,jQuery/JS无法识别从Ajax生成的新添加的html元素。有一种方法可以让你达到你想要的结果。您可以将带有html代码的jQuery/JS代码作为字符串从文件(getData.php)发送到Ajax

echo '<p id="data1" class="data">data1</p>';
echo '<script>';
echo "$(document).on('click', '#data1', function(){alert('DATA1 Clicked');});"
echo '</script>';
die();

其中一个应该能够解决问题。

您可以使用我现在正在研究这个问题。看起来很有希望。如果成功了,我会向你汇报。你可以利用我现在正在调查这件事。看起来很有希望。如果成功的话,我会汇报的。我是这样假设的。但是,这有什么帮助呢?php文件中的javascript(我将通过echo添加)无法访问主html文件中的JS,不是吗?像您在那里做的那样,像“alert”这样做是可行的,但是我希望单击的数据被解析到我的主html文件中,AJAX调用就是从该文件启动的。例如:点击按钮,ajax调用,数据填充到对话框中。然后用户单击x行,然后页面将用数据x内容填充主html页面的文本区域。我已经更新了我的答案。请检查他们是否能解决你的问题。我是这样假设的。但是,这有什么帮助呢?php文件中的javascript(我将通过echo添加)无法访问主html文件中的JS,不是吗?像您在那里做的那样,像“alert”这样做是可行的,但是我希望单击的数据被解析到我的主html文件中,AJAX调用就是从该文件启动的。例如:点击按钮,ajax调用,数据填充到对话框中。然后用户单击x行,然后页面将用数据x内容填充主html页面的文本区域。我已经更新了我的答案。请检查他们是否能解决您的问题。