2010-04-10 146 views
1

嘿家伙,快速问题,我有这个基本上包装在图像括号中的输入的javascript/jquery函数,并且该函数的第一部分工作,但按钮不禁用后,我不能弄清楚为什么(最后一行不起作用)。如果有人有想法,请告诉我。提前致谢。无法获得禁用按钮工作

<input id="2image" type="button" value="Attach" onclick="imageid('message')"> 

<script> 
    function imageid(input) { 
     var obj=document.getElementById(input); 
     obj.value+="[image]image[/image]"; 

     $("#2image").attr({ disabled:true, value:"Inserted" }); 
    } 
</script> 

回答

4

你可能只是绊这个微不足道的限制:

http://www.w3.org/TR/html401/types.html#type-name

ID名称代币必须以字母([A-Za-z])开头,后面可以跟随任意数量的字母,数字([0-9]),连字符(“ - ”),下划线“_”),冒号(“:”)和句点(“。”)。

I.e. id="2image"无效。 。

+1

请注意,我认为大多数浏览器只会浏览一下,但谁知道...... – deceze 2010-04-10 05:51:35

+0

+1。如果是这种情况,他可以使用'$('input [value =“Attach”]')'作为选择器。 – 2010-04-10 05:53:30

+0

@Jim或者,你知道,他可以修正身份证。 ;) – deceze 2010-04-10 05:55:05

0

尝试设置$("elements").attr('disabled', 'disabled');

+0

没有工作,谢谢你的建议。 – Scarface 2010-04-10 05:09:12

1

您需要设置残疾人属性设置为“已禁用”,而不是真实的,我个人比较喜欢使用.val()设定值。

$("#2image").attr('disabled', 'disabled').val('Inserted'); 

几个观察:

的最后一行是jQuery的,而前述线是香草的JavaScript。你确定你通过<script type="text/javascript" src="jquery-1.4.2.js"></script>标签在你的页面中包含jQuery吗?

如果你确实包括jQuery的,你应该考虑使用jQuery的运营商更换你的getElementById调用($('#' + input),或只是$(input)如果修改调用代码前面加上#):

$(input).val($(input).val() + '[image]image[/image]'); 
+0

我是积极的jQuery包括在内,但它是1.3.2。出于某种原因,您的建议无效。是否因为有正常的javascript处理它?第一部分将文本附加到textarea。我想这可以很容易地在JQuery中完成,我刚刚离开它,因为我很久以前做了它,它的工作。 – Scarface 2010-04-10 05:08:02

+0

我试过改变 var obj = document.getElementById(input); obj.value + =“[image] image [/ image]”; 至 $(input).val($(input).val()+'[image] image [/ image]'); 和顶部停止工作 – Scarface 2010-04-10 05:13:20

+0

我认为这是因为jQuery与正常的JavaScript混合在一起。 – Scarface 2010-04-10 05:20:24

1

只需访问一个DOMElement,并通过香草的JavaScript更改:

$( “#2image”)VAL( “未插入”)得到(0).disabled = TRUE;

$('input[value="Inserted"]').get(0).disabled = true;

我只是跑这个在JavaScript控制台中的谷歌浏览器更改添加注释按钮禁用,并显示“疑难杂症!”

+0

欣赏它吉姆,原来是一个奇怪的变量命名问题哈哈。 +1为你的时间。 – Scarface 2010-04-10 06:08:53

+0

@面:谢谢。无论如何,我都粘贴了错误的代码。我已经更新了我的答案,以防有人发现这个问题,这不是命名约定。 – 2010-04-12 18:23:30