您好我有一个单选按钮(StarRating radiobutton使用jquery)和一个文本框。当我点击星号时,我希望radiobutton值显示在文本框中。
<input id="InsRating1" class="star" type="radio" name="InsRating" value="1" title="Worst"/>
<input id="InsRating2" class="star" type="radio" name="InsRating" value="2" title="Good"/>
我尝试将Onclick()放入,但是onClick()从未被解雇过。 请告知如何从我的radiobutton获取值到文本框。谢谢
我在下面尝试了这个,但值是“Undefined”
$(document).ready(function() {
$('#InsRating1').click(function() {
alert(this.value)
});
});
------------- ----------编辑
我在下面使用g_thom的答案但是遇到了这个问题:
我有3组带3个文本框的星星。每个评级应仅显示1个文本框。
但是,无论何时单击任何星形,它都会显示所有3个文本框的值,而不是仅指定的一个。请指教。感谢
<script type="text/javascript">
$(function(){
$('。star-rating')。click(function(){
//将“total stars”的值分配给id为ratingText的文本框
$( '#EvaluationInstructorRatingTextBox')VAL($( '星级评定上。')长度);。
});
$('。rating-cancel')。click(function(){
//单击取消按钮时,该值为“0”
$( '#EvaluationInstructorRatingTextBox')VAL( '0')。
});
$('.star-rating').click(function() {
// assign the value of "total stars" to a textbox with an id of ratingText
$('#EvaluationMaterialRatingTextBox').val($('.star-rating-on').length);
});
$('.rating-cancel').click(function() {
// the value is '0' when the cancel button is clicked
$('#EvaluationMaterialRatingTextBox').val('0');
});
$('.star-rating').click(function() {
// assign the value of "total stars" to a textbox with an id of ratingText
$('#EvaluationValueRatingTextBox').val($('.star-rating-on').length);
});
$('.rating-cancel').click(function() {
// the value is '0' when the cancel button is clicked
$('#EvaluationValueRatingTextBox').val('0');
});
});
答案 0 :(得分:2)
由于输入转换为div('rating stars'被分配了不同的类),我想你会想要计算.star-rating-on
类的div数,并将该值分配给输入,像这样:
$('.star-rating').click(function() {
// assign the value of "total stars" to a textbox with an id of ratingText
$('#ratingText').val($('.star-rating-on').length);
});
无聊的示例 - 没有实际的图形/动画(只是插件页面上转换输入的HTML - 值总是4):http://jsfiddle.net/bhf2d/
修改强>
上面的代码应该有效。我想你可能认为你需要将你的jQuery应用到单选按钮,但事实并非如此,因为它在页面加载时被替换为div。如果您不清楚,我已使用您在问题中提供的代码添加了一个实时示例:Click here to see it。
编辑2
请参阅an updated version here,与其他要求相匹配以设置多个复选框。文本框已稍微重命名(InsRatingText0等),以方便添加更多项目。名称约定InsRatingText[n]
设置为匹配插件动态添加的div类('rater-0','rater-1'等)
答案 1 :(得分:0)
这些<input>
元素未被点击,因为它们被隐藏并被<div>
元素替换。您应该使用onChange()
个事件。
此外,单选按钮不使用属性value
,而是使用checked
。
答案 2 :(得分:0)
尝试这样的事情
$(function (){
$(".star").click(function(){
$("#textbox1").val($(this).val());
});
});
基本上,它是使用class =“star”为onclick添加一个处理程序,然后将该值复制到文本框中。
答案 3 :(得分:0)
$(".star").bind('click', function() {
$("#ratingValue").val($(this).text())
});
似乎在复选框上获取val()不起作用,但使用text()给出了值。以下是工作示例:jsfiddle