如何从TYPO3中的Ajax页面中删除CSS样式的锥形标题输出?
这是我的Typoscript:
ajax = PAGE
ajax {
typeNum = 1234
# this solution is working, but then I don't have flexform values
# 10 < tt_content.list.20.myextension_pi1
10 < styles.content.get
10 {
select.where = colpos = 0
select.andWhere = list_type='myextension_pi1'
}
config {
disableAllHeaderCode = 1
additionalHeaders = Content-type:application/json
xhtml_cleaning = 0
admPanel = 0
debug = 0
no_cache = 1
}
}
这是我的Ajax结果 - Hello World是tt_content标头:
<h2 class="csc-firstHeader">Hello World</h2>{"valid":false}
我已经尝试过但没有成功:
lib.stdheader >
lib.header >
这会影响所有页面类型,对于标准输出,我想保留tt_content标头输出。
答案 0 :(得分:3)
你不应该放置包含插件的tt_content
元素,而是插件本身,例如:
ajax = PAGE
ajax {
typeNum = 1234
10 < plugin.myextension_pi1
config {
disableAllHeaderCode = 1
additionalHeaders = Content-type:application/json
xhtml_cleaning = 0
admPanel = 0
debug = 0
no_cache = 1
}
}
在这种情况下,您无需修改CSC。
当然在这种情况下,您需要通过TS配置您的扩展(最好使用选项将TS配置与FlexForm合并,like this)
<强>替代:强>
Voucher page
) - 将tt_conent与您的flexform放在一起。uid
(让我们说它是123
)并将其添加到ajax链接即:index.php?id=123&type=1234
在页面上创建空的TypoScript模板(不是root!),在Settings
字段中删除CSC中的所有格式(如您所示)
lib.stdheader >
lib.header >
etc...
您也可以使用TypoScript conditions仅在给定页面上清除CSC,即
[globalVar = TSFE:id = 123]
lib.stdheader >
lib.header >
[end]
或仅用于type
参数(我在某地读过它有错误,但没有确认,所以它应该也能正常工作):
[globalVar = GP:type = 1234]
lib.stdheader >
lib.header >
[end]
答案 1 :(得分:1)
根据AJAX调用的用例,我还会考虑使用eID脚本进行AJAX调用而不是页面类型。
在大多数情况下,这至少是我的偏好。
答案 2 :(得分:0)
AJAX页面类型
tmp.ajaxConf = PAGE
tmp.ajaxConf {
typeNum = 1249058000
config {
disableAllHeaderCode = 1
xhtml_cleaning = 0
admPanel = 0
}
}
ajax_fullPage < tmp.ajaxConf
ajax_fullPage {
typeNum = 1234567890
10 < styles.content.get
}
AJAX
var _currentURL = window.location; // Current URL Path
$.ajax({
url: _currentURL,
data: '&type=1234567890',
cache:false,
success: function(result) {
// Code
},
error: function(result) {
alert('Error');
}
});