2

我有以下代码行:

var show = new Show(artist.val(), day.val(), starttime.val(), endtime.val());

我的问题是我的显示对象包含此行之后的对象,而不是我试图用 val() 获得的值:

调试器中的对象

如何确保获取值而不是对象?我已经尝试过了:

var artistvalue = artist.val();
var show = new Show(artistvalue, day.val(), starttime.val(), endtime.val());

尽管如此,节目艺术家字段仍显示 input#artist.text.... 等。

4

4 回答 4

2

您需要使用它,因为艺术家是 jquery seletcor

 $(artist).val()

代替

 artist.val()
于 2013-10-02T10:42:52.933 回答
0

尝试

$('[name="artist"]').val();

或者

$('[name="artist"]').text();

假设元素的名称是艺术家

于 2013-10-02T10:45:50.590 回答
0

$("#artist").val()如果艺术家是该字段的ID,或者$("[name='artist']").val()如果艺术家是该字段的名称,您应该尝试

于 2013-10-02T10:46:54.690 回答
0

终于弄明白了,不是我这里提供的代码,而是Show()的声明:

function Show(){
    this.artist = artist;
    this.day = day;
    this.starttime = starttime;
    this.endtime = endtime;
}

Show 缺少它的参数,所以它只是使用了其他函数中的艺术家等。将其更改为以下有助于:

function Show(artist, day, starttime, endtime){
    this.artist = artist;
    this.day = day;
    this.starttime = starttime;
    this.endtime = endtime;
}
于 2013-10-02T13:11:11.907 回答