PHP动态加载的数据在DOM / JavaScript中无法识别
PHP Dynamically Loaded Data Not Recognised In DOM / By JavaScript
我正在构建一个页面,在选择两个日期和几个下拉框之后,AJAX POST执行SQL:
window.onload = function(){
Search();
}function Search(){
var CIAttributeCompletenessCITypeID = $('#CIType').val();
var CIAttributeCompletenessCISubTypeID = $('#CISubType').val();
var CIAttributeCompletenessCIAttributeID = $('#CIAttribute').val();
var CIAttributeCompletenessStartDate = $('#start').val();
var CIAttributeCompletenessEndDate = $('#end').val();
var CIAttributeCompleteness = {CIAttributeCompletenessCITypeID,CIAttributeCompletenessCISubTypeID,CIAttributeCompletenessCIAttributeID,CIAttributeCompletenessStartDate,CIAttributeCompletenessEndDate};
$.ajax({
type:'POST',
url:'/ITSMIS/getData/CIAttributes.php',
data:CIAttributeCompleteness,
success:function(html){
$('#CIAttributeCompleteness').html(html);
$(".data-table").DataTable();
}
})
查询返回结果后,PHP将基于每行的特定字段写入页面。
if(!empty($_POST["CIAttributeCompletenessCITypeID"]) && !empty($_POST["CIAttributeCompletenessCISubTypeID"]) && !empty($_POST["CIAttributeCompletenessCIAttributeID"])){
$sql = "SELECT CIAttributeCompleteness.CIAttributeCompletenessPercentage, CIAttributeCompleteness.CIAttributeCompletenessMissing, CIAttributeCompleteness.CIAttributeCompletenessCompleted, CIAttributeCompleteness.CIAttributeCompletenessTotal, CIAttributeCompleteness.CIAttributeCompletenessDate, CIType.CITypeTitle AS CIAttributeCompletenessCITypeTitle, CISubType.CISubTypeTitle AS CIAttributeCompletenessCISubTypeTitle, CIAttribute.CIAttributeTitle AS CIAttributeCompletenessCIAttributeTitle FROM CIAttributeCompleteness INNER JOIN CIType ON (CIType.CITypeID = CIAttributeCompleteness.CIAttributeCompletenessCITypeID) INNER JOIN CISubType ON (CISubType.CISubTypeID = CIAttributeCompleteness.CIAttributeCompletenessCISubTypeID) INNER JOIN CIAttribute ON (CIAttribute.CIAttributeID = CIAttributeCompleteness.CIAttributeCompletenessCIAttributeID) WHERE CIAttributeCompleteness.CIAttributeCompletenessCITypeID = ".$_POST['CIAttributeCompletenessCITypeID']." AND CIAttributeCompleteness.CIAttributeCompletenessCISubTypeID = ".$_POST['CIAttributeCompletenessCISubTypeID']." AND CIAttributeCompleteness.CIAttributeCompletenessCIAttributeID = ".$_POST['CIAttributeCompletenessCIAttributeID']." AND CIAttributeCompleteness.CIAttributeCompletenessDate BETWEEN '".$_POST['CIAttributeCompletenessStartDate']."' AND '".$_POST['CIAttributeCompletenessEndDate']."'";$stmt = sqlsrv_query($conn, $sql);
while($obj = sqlsrv_fetch_object($stmt)){
echo "
<tr>
<td>".date_format($obj->CIAttributeCompletenessDate, 'd/m/Y')."</td>
<td>".$obj->CIAttributeCompletenessCITypeTitle."</td>
<td>".$obj->CIAttributeCompletenessCISubTypeTitle."</td>
<td>".$obj->CIAttributeCompletenessCIAttributeTitle."</td>
<td>".$obj->CIAttributeCompletenessPercentage."</td>
<td>".$obj->CIAttributeCompletenessMissing."</td>
<td>".$obj->CIAttributeCompletenessCompleted."</td>
<td>".$obj->CIAttributeCompletenessTotal."</td>
</tr>";
}
这将数据输出到页面fine中。然而,几乎没有JavaScript工作在data/HTML元素张贴。
这只是我尝试过的一个,它应该隐藏任何不符合搜索条件的行输入到文本框中:
var $rows = $('.data-table tr');
$('#search-y').keyup(function() {
var val = '^(?=.*''b' + $.trim($(this).val()).split(/'s+/).join('''b)(?=.*''b') + ').*$',
reg = RegExp(val, 'i'),
text;
$rows.show().filter(function() {
text = $(this).text().replace(/'s+/g, ' ');
return !reg.test(text);
}).hide();
});
基本上就像任何JavaScript都无法识别页面上有HTML输出。
把你希望运行的javascript放在Ajax的成功部分。然后dom应该拾取html。- Mueyiwa Moses Ikomi
相关文章:
- Google/html5语音识别JavaScript SDK Chrome网络工具包SpeechRecognition
- JavaScript无法识别图像
- 在Fiddler JavaScript中识别POST请求
- javascript正则表达式来识别所有特殊字符
- 使用jQuery+Javascript识别一个空文本节点
- 当点击wordpress链接时,我如何让JavaScript识别
- 如何使用 javascript 识别无需登录的客户
- 语音到文本JavaScript识别医学词典
- 搜索Thorough链接并用Regex、PHP或Javascript识别RSS源
- 如何使用vanilla Javascript识别无序和/或嵌套列表序列中的上一个/下一个链接
- 如何用javascript识别子窗口是否已关闭
- Javascript /识别从缓存加载
- 使用xpath和cssSelector (Javascript)识别元素
- 如何让JavaScript识别退格
- Javascript识别浏览器平台是桌面还是移动平台(可能是/不是来自设备宽度-高度)
- Javascript识别启用下拉选择类型
- 类型的Javascript识别
- 如何用javascript识别哪个按钮发出了请求
- 如何让JavaScript识别对象是否在数组中?
- 使用javascript识别flash中的视频区域