jquery变量传递错误

时间:2013-01-08 18:19:00

标签: jquery jquery-ui

我有一个按钮名称“修改”,点击后通过以下

获得它的值
 $('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 method如下

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

变量的值始终为0。 有人能指出我哪里弄错了。 PLZ?感谢

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:1)

试试这个: -

open:function(){
                alert($('button[name=modify]').val())
            $('#title').val($('#ztitle'+mybuttonvalue).val());              
            $('#news').val($('#znews'+mybuttonvalue).val());
        },