-2

我有一个按钮名称“修改”,单击时通过以下方式获取它的值

 $('button[name=modify]').click(function() {

        alert("button value that you click "+$(this).val());
        mybuttonvalue=$(this).val();
        alert("mybuttonvalue @ button click "+mybuttonvalue);
        $( "#mydialog" ).dialog( "open" );

    })

并且在文档准备好后声明名为“mybuttonvalue”的变量,并在模型对话框表单的打开方法中使用如下

  open:function(){
                alert(mybuttonvalue);
                alert($('#ztitle'+mybuttonvalue).val());
                alert($('#znews'+mybuttonvalue).val());
            $('#title').val($('#ztitle'+mybuttonvalue).val());              
            $('#news').val($('#znews'+mybuttonvalue).val());
        },

此时变量的值始终为0。有人可以指出我在哪里做错了。请?谢谢

4

2 回答 2

1

不要在一个函数中设置变量并在另一个函数中使用它们。

相反,在您需要的函数中查询值:

$('button[name=modify]').click(function() {
  $( "#mydialog" ).dialog( "open" );
});

open:function(){
  var mybuttonvalue = $('button[name=modify]').val();

  alert($('#ztitle'+mybuttonvalue).val());
  alert($('#znews'+mybuttonvalue).val());

  $('#title').val($('#ztitle'+mybuttonvalue).val());              
  $('#news').val($('#znews'+mybuttonvalue).val());
},

这里讨论了另一个变体:jquery-ui, Use dialog('open') and pass a variable to the DIALOG

于 2013-01-08T18:24:12.250 回答
1

试试这个:-

open:function(){
                alert($('button[name=modify]').val())
            $('#title').val($('#ztitle'+mybuttonvalue).val());              
            $('#news').val($('#znews'+mybuttonvalue).val());
        },
于 2013-01-08T18:24:52.493 回答