javascript不工作-$未定义问题
我整天都在为此而斗争,在谷歌和stackoverflow上搜索,但无法找到它为什么这样做有效:javascript不工作-$未定义问题,javascript,jquery,Javascript,Jquery,我整天都在为此而斗争,在谷歌和stackoverflow上搜索,但无法找到它为什么这样做有效: <head> <script src="/js/jquery.js" type="text/javascript"></script> <script type="text/javascript"> $('input:radio[name="RADIOSELECTOR"]').change(function() {
<head>
<script src="/js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$('input:radio[name="RADIOSELECTOR"]').change(function() {
if ($(this).val()=='one') {
$('#ones').removeAttr('disabled');
$('#twos').attr('disabled',true);
} else if ($(this).val()=='two') {
$('#ones').attr('disabled',true);
$('#twos').removeAttr('disabled');
} else {
$('#ones').attr('disabled',true);
$('#twos').attr('disabled',true);
}
});
</script>
</head>
<form name="order" action="managecart.html" onsubmit="return AddToCart(this); return ValidateCart(this);">
<input name="PRICE" type=hidden id="PRICE" value="" />
<input name=NAME type=hidden id="NAME" value="" />
<input name=ID_NUM type=hidden id="ID_NUM" value="" />
<input type=hidden name="SHIPPING" value="0.00" />
<input type="radio" name="RADIOSELECTOR" value="lose" onClick="document.order.PRICE.value='59.99'; document.order.NAME.value='iPhone 3G Glass/digitiazer replacement'; document.order.ID_NUM.value='3GGL'; document.order.SHIPPING.value='0.00';" />Glass/digitizer repair <b>59.99$</b><br><br>
<b> Combo repairs:</b><BR><br>
<input type="radio" name="RADIOSELECTOR" value="lose" onClick="document.order.PRICE.value='74.99'; document.order.NAME.value='iPhone 3G Glass/digitizer + battery repair'; document.order.ID_NUM.value='3GGLB'; document.order.SHIPPING.value='0.00';" />Glass/digitizer + battery repair = <b> 74.99$</b> 25$ in savings!<br>
<input type="radio" name="RADIOSELECTOR" value="one" onClick="document.order.PRICE.value='79.99'; document.order.NAME.value='iPhone 3G Glass/digitizer + combo '; document.order.ID_NUM.value='3GGLC'; document.order.SHIPPING.value='0.00';" />Glass/digitizer + <select id="ones" name="ADDITIONALINFO2" disabled="disabled">
<option value=" "></option><option value="Home button">Home button</option> <option value="Power button">Power button</option><option value="Mute switch">Mute switch</option><option value="volume button">Volume button</option></select>
= <b>79.99$</b> 30$ in savings!<br>
<input type="radio" name="RADIOSELECTOR" value="two" onClick="document.order.PRICE.value='99.99'; document.order.NAME.value='iPhone 3G Glass/digitizer + combo + ''ADDITIONALINFO3'; document.order.ID_NUM.value='3GGLBC'; document.order.SHIPPING.value='0.00';" />Glass/digitizer + battery + <select name="ADDITIONALINFO3" id="twos" disabled="disabled><option value=" "></option><option value="Home button">Home button</option> <option value="Power button">Power button</option><option value="Mute switch">Mute switch</option><option value="volume button">Volume button</option></select> = <b>99.99$</b> 30$ in savings!<br>
<input name="QUANTITY" type="hidden" value="1" /><br>
<input type="image" src="./images/addtocart.png" align="center" name="BUY" value=" Add to cart " ALT="Add to Cart">
</form>
这适用于JSFIDLE,但不适用于我的网站或JSbin,witch给出错误:
由于行的原因,$未定义
28/26:
$'input:radio[name=RADIOSELECTOR]'
{
还有一种方法,当select被禁用时,它会自动转到第一个选项吗?请提前感谢
<script src="js/jquery.js"></script>
不是正确的路径。请重试
<script src="/js/jquery.js"></script>
或使用
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
小提琴工作,因为它为您加载jQuery。@Rafal:看起来您失踪了
$(document).ready(function() {
// your code
)};
您正在加载dom之前进行绑定。您需要将脚本包装到
$(document).ready(function() {
});
或者同一事物的速记版本
$(function() {
});
您是否检查了js/jquery.js的路径是否在服务器上的正确位置?如果您使用的是Firefox,Firebug将帮助您检查。如果没有检查,您是否使用了其他可能与jquery冲突的js库?您确定正确加载jquery路径是否正确?我想是这样的,因为它在JSFIDLE,它为您加载jQuery。如果您将代码封装在一个闭包中并传入jQuery,您会得到什么?您忘记了jQuery调用中的type=text/javascript,这是一个必需的属性,在某些浏览器中处于严格模式时,如果没有它,则无法工作。我添加了type=text/javascript nothing,路径是正确的,我甚至还添加了来自ajax的路径……我封装了路径脚本也不起作用,这里是页面,这样你就可以看到它不起作用了。我还能做什么呢?我很确定路径是好的,因为我有其他东西使用jquery没有不同的页面和它的工作。太好了!有没有一种方法,如果有人从选择中选择某个内容,然后按不同的收音机,禁用的选择将自动Caly go to first option?当然,您可以这样做。如果您的选择总是包含一个值设置为空字符串的first,那么您可以调用$'selectId'.val;,这应该会将其重置为第一个值。然后只需将该调用放在单选按钮单击时处理的代码中。这样做有效,但在IE中不起作用,需要对IE进行任何更改?禁用是可行的,但不会将其置于第一选项。谢谢,这很有效!有没有一种方法,如果有人从“选择”中选择某个选项,然后按不同的收音机,禁用的“选择”将自动转到“第一选项”@Rafal:你可以从两个s中删除,它将始终显示第一个选项。我建议你也转换所有的选项将逻辑单击到jQuery。