我需要在单选按钮后添加一些HTML,我想添加一个图像和功能,所以当我点击它时我会检查单选按钮。我会用我自己的selectRadioButton()
功能检查单选按钮。
现有代码是,我无法编辑此部分:
<span class="ms-RadioText">
<input id="idFirstRadioButton" type="radio" name="idFirstRadioButton" value="1" />
</span>
我的想法是,用功能添加我的图像,就是这样做:
$("#idFirstRadioButton").after("Image 1:<br/><a href=\"javascript:selectRadioButton(\"idFirstRadioButton\")\"><img src=\"http://urltoimage/image.jpg\" border=\"0\"/></a>");
但是当我使用这段代码时,我的页面的HTML是这样的:
<span class="ms-RadioText">
<input id="idFirstRadioButton" type="radio" name="idFirstRadioButton" value="1" /> Image 1:<br/><a href="javascript:selectRadioButton(" shape="" idFirstRadioButton?)?=""><IMG src="http://urltoimage/image.jpg" border=0></a>
</span>
他正在添加&#34; shape =&#34;&#34; ?idFirstRadioButton)=&#34;&#34;&#34;
正确的代码应该是:
<span class="ms-RadioText">
<input id="idFirstRadioButton" type="radio" name="idFirstRadioButton" value="1" /> Image 1:<br/><a href="javascript:selectRadioButton("idFirstRadioButton")><IMG src="http://urltoimage/image.jpg" border=0></a>
</span>
我已经尝试使用'
,\"
,两者的组合,变量,......
$("#idFirstRadioButton").after("Image 1:<br/><a href=\"javascript:selectRadioButton(\"idFirstRadioButton\")\"><img src=\"http://urltoimage/image.jpg\" border=\"0\"/></a>");
$("#idFirstRadioButton").after('Image 1:<br/><a href="javascript:selectRadioButton(\"idFirstRadioButton\")"><img src="http://urltoimage/image.jpg" border="0"/></a>');
$("#idFirstRadioButton").after('Image 1:<br/><a href="javascript:selectRadioButton("' + VARidFirstRadioButton + '")"><img src="http://urltoimage/image.jpg" border="0"/></a>');
我做错了什么或者我应该使用什么代码?
答案 0 :(得分:2)
您应该在channel.writeAndFlush(...)
字符串中使用不同的引号,因为它们是必需的。例如:
.after
结果如下:
$("#idFirstRadioButton").after("Image 1:<br/><a href=\"javascript:selectRadioButton('idFirstRadioButton')\"><img src=\"http://urltoimage/image.jpg\" border=\"0\"/></a>");
但是,只有在没有其他选择的情况下才会这样做。正如@CBroe所提到的,你应该尝试不在绑定的html中绑定事件处理程序,但尝试使用正确的方法处理它们。 提供示例@Dan O似乎是您应该寻找的东西。
答案 1 :(得分:1)
你做错了是使用HTML字符串而不是构建和追加元素本身,这(除了潜在的安全问题)可能会导致你在这里看到的那种令人困惑和烦人的行为。你想要这样的东西:
var myImg = $("<img/>");
myImg.attr("src", "http://urltoimage/image.jpg");
myImg.on("click", function(e) {
selectRadioButton("idFirstRadioButton");
});
$("#idFirstRadioButton").after(myImg);
答案 2 :(得分:0)
如果您的"
或'
深度超过1级,则需要对其进行嵌入或逃避。
最后一个应该是正确的,除了你继续使用"
而不是逃避或交替它们。
正确应该是:
$("#idFirstRadioButton").after('Image 1:<br/><a href="javascript:selectRadioButton(\'' + VARidFirstRadioButton + '\')"><img src="http://urltoimage/image.jpg" border="0"/></a>');
所以我们从after的单引号开始,然后是href的双引号,然后我们转义selectRadioButton内部的单引号,然后单引号退出字符串并转储var
,然后回到弦内并继续前进。
Fiddle
注意:请记住声明你的var“VARidFirstRadioButton”
shape of
错误。