簡體   English   中英

Jquery .val總是為下拉列表返回相同的值

[英]Jquery .val always return same value for dropdown

以下是我的ajax多圖像上傳代碼

<script>
$(document).ready(function()
{

    var settings = {
        url: "upload.php",
        method: "POST",
        allowedTypes:"jpg,png",
        fileName: "myfile",
        formData: {"projectId":$('#project_name').val()},
        multiple: true,
        onSuccess:function(files,data,xhr)
        {
            $("#status").html("<font color='green'>Upload is success</font>");
        },
        afterUploadAll:function()
        {
            alert("all images uploaded!!");
        },
        onError: function(files,status,errMsg)
        {       
            $("#status").html("<font color='red'>Upload is Failed</font>");
        }
    }
    $("#mulitplefileuploader").uploadFile(settings);

});
</script>

以下是我的文本域值

<select class="form-control" name="project_name" id="project_name">
<option value="1">Project 1</option>
<option value="2">Project 2</option>                                    
</select>

下面是我的文件上傳器div

<div id="mulitplefileuploader">Upload</div>

上面的div使用一個js文件,它可以ajax上傳幾個圖像去一個文件夾,它的工作。 但是當我嘗試發送數據(選定的下拉值)時,盡管我使用jquery啟動,但它始終為1。

在document.ready部分可能有問題嗎?

謝謝

當我更改下拉列表的值並使用圖片上傳時,項目ID始終為1 ,盡管我更改了下拉列表的值並嘗試獲取值

$('#project_name').val()

如何更改我的代碼,以便在執行上載圖像的腳本時,它將通過id project_name,selected.val獲取當前選定的下拉列表

謝謝!

采用

$('#project_name option:selected').val()

獲取所選選項的值

現在,如果您想獲得選項文本,即項目1,項目2等,您需要編寫

$('#project_name option:selected').text()

UPDATE

問題實際上是您的代碼設置。 您已在$(document).ready創建了settings 因此,即使您更改了selected option它也不會更改document ready期間定義的settings值。 您需要更新您的設置onchange或以其它方式。

將上傳綁定到表單的提交

$(document).ready(function()
{
$('form').submit(function(e){
e.preventDefault()
    var settings = {
        url: "upload.php",
        method: "POST",
        allowedTypes:"jpg,png",
        fileName: "myfile",
        formData: {"projectId":$('#project_name option:selected').val()},
        multiple: true,
        onSuccess:function(files,data,xhr)
        {
            $("#status").html("<font color='green'>Upload is success</font>");
        },
        afterUploadAll:function()
        {
            alert("all images uploaded!!");
        },
        onError: function(files,status,errMsg)
        {       
            $("#status").html("<font color='red'>Upload is Failed</font>");
        }
    }
    $("#mulitplefileuploader").uploadFile(settings);

});
});

try $("#project_name option:selected").val();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM