[英]How can I store JavaScript from within a jQuery [each] loop to a php variable
我[成功地]将jQuery片段存储在php变量中,其中的值由php脚本填充,如下所示:
...//collect necessary variables
$script = "
<script type='text/javascript'>
(function($) {
analytics.identity('" . $cid . "', {
created: '" . $created . "',
email: '" . $email . "',
...: '" . $whatever . "'
});
})(jQuery);
</script>
";
return $script;
我还可以[成功]获取页面上所有表单的name属性,如下所示:
<script type='text/javascript'>
(function($) {
$('form').each(function() {
var formname = $( this ).attr('name');
if(formname !== undefined) {
console.log(index + ':' + encodeURIComponent(formname));
};
});
})(Jquery);
</script>
我遇到的问题(也许很明显)是缺乏使用javascript的经验,他们不知道如何将两者结合在一起,因此我的$script
看起来像这样:
$script = "
<script type='text/javascript'>
(function($) {
analytics.identity('" . $cid . "', {
created: '" . $created . "',
email: '" . $email . "',
...: '" . $whatever . "'
});
analytics.trackForm($('form[name="formname1"]'),'Form Submitted', {
lead: formname
});
analytics.trackForm($('form[name="formname2"]'),'Form Submitted', {
lead: formname
});
...//(n) number of form names
})(jQuery);
</script>
";
最新的脚本直接添加到页脚中:
<script type="text/javascript">
(function($) {
$('form').each(function() {
var formname = $(this).attr('name');
if( formname !== undefined) {
console.log( formname );
var forms = $('form[name="' + formname + '"]');
var trackforms = analytics.trackForm(forms, 'Submitted Optin Form', { leadmagnet: "'" + formname + '"' });
return trackforms;
}
});
})(jQuery);
</script>
Console.log在页面上当前输出一种形式,如果我添加另一种形式,它也可以正确地输出,但是其余代码只是按原样编写,我没有得到。
再次感谢。
document.write(...)
将字符串添加到文档中而不是脚本中。
您需要返回所需的功能。
$script = "
<script type='text/javascript'>
(function($) {
analytics.identify('" . $ifs_id . "', {
created: '" . $created . "',
email: '" . $email . "',
firstName: '" . $first_name . "',
leadsource: '" . $lead_source ."'
});
$('form').each(function( index ) {
var formname = $( this ).attr('name');
if( formname !== undefined) {
//console.log( index + ':' + formname );
var forms = $('form[name=\"+formname+\"]);
var trackform = analytics.trackForm(forms, 'Submitted Opt In Form', {
leadmagnet : $( this ).attr('name')
});
return trackform;
}
});
})(jQuery);
</script>
";
return $script;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.