2013-02-22 78 views
0

我一直在試圖用這個代碼的字符串來替換輸入值的錯誤:試圖改變輸入值返回

$('input[name=availibility]').value() = current; 

其中拋出了:

Uncaught ReferenceError: Invalid left-hand side in assignment 

的代碼是從所謂的一個onchange處理程序,它將觸發該功能(原諒麪條代碼):

function avail(element){ 
    if(element.checked){ 
     var current = $('input[name=availibility]').text(); 
     if(current != ''){ 
     current = current + ', ' + element.attr("name"); 
     } 
     else{ 
      current = $(this).attr("name"); 
     } 

     $('input[name=availibility]').value() = current; 
    }else{ 
     if(!$('input[name=availibility]').text().replace(element.attr("name")+',','')) 
     { 
      $('input[name=availibility]').text().replace(element.attr("name"),''); 
     } 
     } 
    } 

任何想法我在做什麼錯了嗎?

+0

您試圖爲函數調用分配一個值。 – ultranaut 2013-02-22 02:39:54

+0

請閱讀文檔:http://api.jquery.com/val/#val2。 – 2013-02-22 02:42:02

回答

2

不能分配給一個函數調用(這僅僅是JavaScript的/ ECMA語法的一部分,但它沒有意義做也就是語義上)。當你調用一個函數時,你必須在括號內傳遞參數給它。

$("input[name=availibility]").value(current); 

您可能還打算使用.val。該文檔還向您顯示了執行此操作的正確方法。

您還拼寫了「可用性」錯誤。

+0

謝謝,它是我在凌晨3點得到的。雖然,可用性是故意的。再次感謝你。 – 2013-02-22 02:42:05

1

我想應該是這樣的:

$('input[name=availibility]').value(current); 
+0

非常感謝! – 2013-02-22 02:45:32