2013-10-02 27 views
1

我有下面的代码行:瓦尔()返回的对象,而不是字符串时,用它作为参数

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

我的问题是,我的节目对象包含此行之后的对象,而不是我的价值试图让与VAL():

The object in debugger

如何让我一定要得到的值,而不是对象?我已经尝试过这样的:

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

尽管如此,表演艺术家现场说,输入#artist.text ....等

+4

请添加您的“HTML代码”请 –

+0

“艺术家”是一个JQuery选择器吗?如果他们是JQuery对象,那么.val()正常返回对象而不是包含的值。如果是这样,请使用.html()获取该值。另外,@Misters已经注意到,在select元素上使用'.val()'不会返回选定的值。 – TCHdvlp

+0

@TCHdvlp仔细看,他们都是输入和选择 – Misters

回答

0

终于搞清楚了什么是错的,它不在我提供的代码中,而是在Show()的声明中:

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

显示缺少参数,所以它只是使用其他功能的艺术家等。将其更改为以下内容有助于:

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

您需要使用这一点,因为艺术家是一个jQuery seletcor

$(artist).val() 

代替

artist.val() 
0

尝试

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

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

假设元素的名称是艺术家

0

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

相关问题