我正在尝试将js脚本加载到我的头部中两天。 它仍然无法正常工作.. 我正在构建一个带有表单bij的cms页面,您可以订购一些产品样本(最多5个) 在页面的en处有一个小的contcat,用于提交请求
需要设置: - 中文文本 - 带有图片和复选框的网格 - 下面的联系表格发送样品申请
此时我已经尝试了几乎所有可能的选择。 - 通过自定义页面布局xml添加
<reference name="head">
<action method="addJs"><script>js/my.js</script></action>
</reference>
制作了一个自定义的samplerequest.phtml并加载了 {{block type =“core / template”template =“page / kleurstalen.phtml”}}
添加了js true page.xml等等。
这是我要加载的jquery代码:
<script type="text/javascript">
jq(document).ready(function(){
jQuery('#kleurstalenform').submit(function() {
if( jQuery('input:checked').length == 0 ) {
alert('U heeft geen stofstallen geselecteerd');
return false;
}
});
jq(":checkbox").bind('click', function(){
if( jq('input:checked').length > 4 ) {
jq(this).attr('checked', false);
alert( 'U kunt maximaal 4 stofstalen bij ons aanvragen.' );
}
});
});
var $j = jQuery.noConflict();
</script>
我不知道为什么它不起作用?也许这是一个范围问题?
感谢您的建议!
最佳
A
答案 0 :(得分:0)
您应该已经在控制台中检查过(Chrome开发者工具中的F12),因为我认为您已经通过自定义页面layout.xml将脚本my.js添加到head块中做了正确的事情。但是,你添加的js将充满错误,这就是它无法正常工作的原因。
您已经jQuery
,jq
然后使用$j
在最后设置noConflict变量。
您还通过addJs
方法包含了一个js文件,因此无需在文件my.js中包含打开和关闭<script>
标记。尝试下面的脚本,看看是否可以让你到任何地方;
var $j = jQuery.noConflict();
$j(document).ready(function() {
$j('#kleurstalenform').submit(function() {
if( $j('input:checked').length == 0 ) {
alert('U heeft geen stofstallen geselecteerd');
return false;
}
});
$j(":checkbox").bind('click', function(){
if( $j('input:checked').length > 4 ) {
$j(this).attr('checked', false);
alert( 'U kunt maximaal 4 stofstalen bij ons aanvragen.' );
}
});
});
答案 1 :(得分:0)
您可以使用local.xml
添加js文件在此文件app / design / frontend / YOUR_THEME / default / layout / local.xml
<?xml version="1.0" encoding="UTF-8"?>
<default>
<reference name="head">
<action method="addItem">js/your_file.js</name></action>
</reference>
</default>
并将您的js文件放在此位置app / design / frontend / YOUR_THEME / default / skin / js
答案 2 :(得分:0)
我有js的复选框部分工作!:)
我根据你的建议修改了脚本,并将下面的代码添加到我的页面布局xml中。 (我也直接在cms页面工作,而不是使用自定义块或.phtml)
自定义布局更新XML:
<reference name="head">
<action method="addItem">
<type>skin_js</type><name>js/kleurstalen.js</name>
</action>
</reference>
现在脚本工作,只允许检查4个样本,这就是我需要的......
但是...
页面中的联系表单不会发送请求 还需要表单验证,(所以我必须寻找一些关于此的教程..) 我以为我可以使用“默认”varien脚本,但现在它将无法正常工作
在我的示例请求cms页面上,我已将此添加到我的代码中
<div><form id="kleurstalenform" action="" method="POST">
<script type="text/javascript">// <![CDATA[
<
var customForm = new VarienForm('kleurstalenform');>
// ]]></script>
我认为这可以与js文件结合使用,用于复选框最大值 但也许新的varienForm部分每个xml还需要一些方向? 我不知道要添加什么,以使其工作..
非常感谢!
最佳
A