سؤال

وأنا أتساءل عما إذا كان أي شخص لديه أي خبرة في استخدام البرنامج المساعد مسج أن يحول html

<select> 
  <option> Blah </option> 
</select>

مربع التحرير والسرد إلى شيء (ربما شعبة) حيث اختيار بند أعمال نفس النقر فوق ارتباط.

أعتقد أنك ربما يمكن استخدام جافا سكريبت التعامل مع الحدث اختيار (بلدي جافا سكريبت المعرفة قليلا في حالة سيئة في هذه اللحظة) و 'مفتاح' على قيمة مربع التحرير والسرد ولكن هذا يبدو وكأنه أكثر من الإختراق.

المشورة الخاصة بك والخبرة التوصيات هي موضع تقدير.

هل كانت مفيدة؟

المحلول

الحل بسيط هو استخدام

$("#mySelect").change(function() {
  document.location = this.value;
});

هذا يخلق الحدث عند_التغيير على حدد مربع إعادة توجيه إلى url المخزنة في الحقل قيمة الخيار.

نصائح أخرى

أنا لست متأكدا من أين كنت تريد أن تصل إلى عند النقر فوق شعبة ، ولكن بالنظر إلى شيء من هذا القبيل ربما سوف تعمل:

<select id="mySelect">
  <option value="1">Option 1</option>
  <option value="2">Option 2</options>
</select>
<div id="myDiv"/>

و مسج التالية يخلق قائمة <div> عناصر يذهب إلى عنوان URL على أساس قيمة الخيار:

$("#mySelect option").each(function() {
    $("<div>" + $(this).text() + "</div>").appendTo($("#myDiv")).bind("click", $(this).val(), function(event) {
        location.href = "goto.php?id=" + event.data;
    });
});
$("#mySelect").remove();

هل هذا ما تريد ؟

إذا كنت ستكون لدينا الكثير من حدد المربعات التي تريد السماح لاستخدام التحويلات, دون أن تحدد لهم بشكل مستقل ، حاول شيئا من هذا القبيل:

$("[id*='COMMON_NAME']").change(function() {
    document.location = this.value;
});

وقد حدد مربعات الكشف عن اسمه وفقا لذلك:

<select id="COMMON_NAME_001">...</select>
<select id="COMMON_NAME_002">...</select>

وهذا يخلق الحدث عند_التغيير لجميع المعرفات التي تحتوي على "COMMON_NAME" للقيام توجيه <option> القيمة.

هذا قليلا من جافا سكريبت في 'اختر':

onchange="if(this.options[this.selectedIndex].value!=''){this.form.submit()}"

انها ليست مثالية (لأن شكل المقدمة في ASP.NET MVC الذي أنا باستخدام لا يبدو أن استخدام محرك التوجيه عناوين url) لكنه لا وظيفة لها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top