我有一个单选按钮,可以在点击时启动jquery脚本。点击后,我渲染一个表格,我希望用户输入评论。 Evrything工作正常,检测到事件并呈现表单但是当我单击表单字段时,它似乎再次运行我的jquery脚本并且我得到了未定义的变量。
这是我的单选按钮
<div class="switch">
<input type="radio" class="switch-input" name="view<?php echo $data['id'];?>"
value="Yes" id="yes<?php echo $data['id']; ?>"
data-comment="<?php echo $comment_state;?>" data-val=1>
<label for="yes">Yes</label>
<input type="radio" class="switch-input" name="view<?php echo $data['id'];?>"
value="No" id="no<?php echo $data['id']; ?>" <?php echo $neutral; ?>
data-opinion="<?php echo $comment_state;?>" data-val=0>
<label for="no" >No</label>
<span class="switch-selection"></span>
</div>
<div id="form<?php echo $data['id']; ?>"> </div> // where I render the form after click
这是jquery脚本
$('[id^="yes"], [id^="no"])').click(function(e) {
var comment = $(this).data('comment'); // comment= 0 because not selected
var val = $(this).data('val'); // val = 1 if I click yes
var parameter = $(this).attr('name'); // parameter = view + id number
parameter = parameter.replace('view','');
if (comment ==0){ // New record
$.ajax(
{
url : 'post/comment',
type: "POST",
success:function(data, textStatus, jqXHR)
{
$(".switch input:radio").attr('disabled',true);
$("#form"+ parameter).html(data);
},
error: function(jqXHR, textStatus, errorThrown)
{
alert("error");
}
});
}
});
这是呈现的表单
<div class="row">
<label for="MyComment" class="required">Comment <span class="required">*</span></label>
<input size="60" maxlength="140" name="MyComment" id="Post_comment" type="text" />
</div>
当我单击字段表单或其他地方时,我收到错误TypeError:参数未定义 (在jquery脚本中)
有什么想法吗?
提前谢谢
答案 0 :(得分:0)
而不是:
$('[id^="yes"], [id^="no"])').click(function(e) {
尝试:
$("input.switch-input:radio").click(function(e) {